next-proper-permutationar = ar0 ⊦ ⟨next#(; ar; hasNext)⟩ (hasNext ⊃ nextperm(ar0, ar);ar = ar0 ∧ max(ar))ordered-all-revminimum-permutationascending-order-is-min-permutedarray-neg-le-eq-2lexicographic-rec1subarray-inc-offset0array-le-kill-prefixarray-le-transarray-le-one-diffrent-positionnext-permutationrev-subarray-split-last-swaprev-subarray-split-stepget-revsubarray-write-aboveremains-ordered-by-swaparray-le-swapdescending-order-is-max-permutedordered-step-downordered-size-smaller-onelexicographic-base1maximum-permutationnext
52167next-proper-permutation-proofnext-proper-permutation-proof-info
The proof is valid.
permut-correct
../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/Extension/longlemmainfo.xmlExtension../../../../../../lib/basic/specs/array-listops/export/unit.xmlarray-listopsnatarray../../../../../../lib/basic/specs/array-listops/export/nil/longlemmainfo.xmlnil../../../../../../lib/basic/specs/list-perm/export/unit.xmllist-permnatarray-oarray-sort../../../../../../lib/basic/specs/list-perm/export/perm-switch/longlemmainfo.xmlperm-switch../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/cputput-reverse/longlemmainfo.xmlcputput-reverse../../../../../../lib/basic/specs/list-perm/export/unit.xmllist-permnatarray-oarray-sort../../../../../../lib/basic/specs/list-perm/export/l/longlemmainfo.xmll../../../../../../lib/basic/specs/list-perm/export/unit.xmllist-permnatarray-oarray-sort../../../../../../lib/basic/specs/list-perm/export/trans/longlemmainfo.xmltrans../../../../../../lib/basic/specs/list-perm/export/unit.xmllist-permnatarray-oarray-sort../../../../../../lib/basic/specs/list-perm/export/sym/longlemmainfo.xmlsym../../../../../../lib/basic/specs/list-perm/export/unit.xmllist-permnatarray-oarray-sort../../../../../../lib/basic/specs/list-perm/export/del/longlemmainfo.xmldel../../../../../../lib/basic/specs/list-del/export/unit.xmllist-delnatarray-oarray-sort../../../../../../lib/basic/specs/list-del/export/in-get/longlemmainfo.xmlin-get../../../../../../lib/basic/specs/list-perm/export/unit.xmllist-permnatarray-oarray-sort../../../../../../lib/basic/specs/list-perm/export/del-01/longlemmainfo.xmldel-01../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/addex/longlemmainfo.xmladdex../../../../../../lib/basic/specs/list-data/export/unit.xmllist-datanatarray-oarray-sort../../../../../../lib/basic/specs/list-data/export/l/longlemmainfo.xmll../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/lez-01/longlemmainfo.xmllez-01../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/succ/longlemmainfo.xmlsucc../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/zero/longlemmainfo.xmlzero../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/gr-def/longlemmainfo.xmlgr-def../../../../../../lib/basic/specs/list-perm/export/unit.xmllist-permnatarray-oarray-sort../../../../../../lib/basic/specs/list-perm/export/empty-01/longlemmainfo.xmlempty-01../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/pred-03/longlemmainfo.xmlpred-03../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/le-def/longlemmainfo.xmlle-def../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/one-01/longlemmainfo.xmlone-01../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/ls-01/longlemmainfo.xmlls-01../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/s-04/longlemmainfo.xmls-04../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/ls-02/longlemmainfo.xmlls-02../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/a/longlemmainfo.xmla../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/c/longlemmainfo.xmlc../../../../../../lib/basic/specs/oelem/export/unit.xmloelemnatarray../../../../../../lib/basic/specs/oelem/export/irreflexivity/longlemmainfo.xmlirreflexivity../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/elim-pred-c/longlemmainfo.xmlelim-pred-c../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/eq-03/longlemmainfo.xmleq-03../../../../../../lib/basic/specs/list-last/export/unit.xmllist-lastnatarray-oarray-sort../../../../../../lib/basic/specs/list-last/export/rev-length/longlemmainfo.xmlrev-length../../../../../../lib/basic/specs/array-copy/export/unit.xmlarray-copynatarray../../../../../../lib/basic/specs/array-copy/export/size-subarray/longlemmainfo.xmlsize-subarray../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/f/longlemmainfo.xmlf../../../../../../lib/basic/specs/oelem/export/unit.xmloelemnatarray../../../../../../lib/basic/specs/oelem/export/ls-le/longlemmainfo.xmlls-le../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/ge/longlemmainfo.xmlge../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/oz/longlemmainfo.xmloz../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/succ-01/longlemmainfo.xmlsucc-01../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/lels/longlemmainfo.xmllels../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/fle/longlemmainfo.xmlfle../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/l-02/longlemmainfo.xmll-02../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/elim-sub/longlemmainfo.xmlelim-sub../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/one-06/longlemmainfo.xmlone-06../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/one/longlemmainfo.xmlone../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/l/longlemmainfo.xmll../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/lf-01/longlemmainfo.xmllf-01../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/lels-03/longlemmainfo.xmllels-03../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/eq-01/longlemmainfo.xmleq-01../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/l-01/longlemmainfo.xmll-01../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/one-03/longlemmainfo.xmlone-03../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/sub-base/longlemmainfo.xmlsub-base../../../../../../lib/basic/specs/array-copy/export/unit.xmlarray-copynatarray../../../../../../lib/basic/specs/array-copy/export/subarray-elim-simp/longlemmainfo.xmlsubarray-elim-simp../../../../../../lib/basic/specs/oelem/export/unit.xmloelemnatarray../../../../../../lib/basic/specs/oelem/export/transitivity/longlemmainfo.xmltransitivity../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/lf/longlemmainfo.xmllf../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/fle-01/longlemmainfo.xmlfle-01../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/ls-02/longlemmainfo.xmlls-02../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/ls-le-simp/longlemmainfo.xmlls-le-simp../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/les/longlemmainfo.xmlles../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/eqle-one/longlemmainfo.xmleqle-one../../../../../../lib/basic/specs/oelem/export/unit.xmloelemnatarray../../../../../../lib/basic/specs/oelem/export/lel/longlemmainfo.xmllel../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/lep-02/longlemmainfo.xmllep-02../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/le-ls-simp/longlemmainfo.xmlle-ls-simp../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/let/longlemmainfo.xmllet../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/anti/longlemmainfo.xmlanti../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/Size-put/longlemmainfo.xmlSize-put../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/cgetput/longlemmainfo.xmlcgetput../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/ngp-07/longlemmainfo.xmlngp-07../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/put-same-content/longlemmainfo.xmlput-same-content../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/ngp-08/longlemmainfo.xmlngp-08../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/ler/longlemmainfo.xmller../../../../../../lib/basic/specs/list-del/export/unit.xmllist-delnatarray-oarray-sort../../../../../../lib/basic/specs/list-del/export/put-length/longlemmainfo.xmlput-length../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/l-num-04/longlemmainfo.xmll-num-04../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/l-06/longlemmainfo.xmll-06../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/ngp-06/longlemmainfo.xmlngp-06../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/lels-02/longlemmainfo.xmllels-02../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/Put-same/longlemmainfo.xmlPut-same../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/ls-03/longlemmainfo.xmlls-03../../../../../../lib/basic/specs/list/export/unit.xmllistnatarray-oarray-sort../../../../../../lib/basic/specs/list/export/a/longlemmainfo.xmla../../../../../../lib/basic/specs/array-copy/export/unit.xmlarray-copynatarray../../../../../../lib/basic/specs/array-copy/export/subarray-write-below/longlemmainfo.xmlsubarray-write-below../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/cancel-01/longlemmainfo.xmlcancel-01../../../../../../lib/basic/specs/array-copy/export/unit.xmlarray-copynatarray../../../../../../lib/basic/specs/array-copy/export/subarray-zero/longlemmainfo.xmlsubarray-zero../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/zero/longlemmainfo.xmlzero../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/ls/longlemmainfo.xmlls../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/add-base/longlemmainfo.xmladd-base../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/add-01/longlemmainfo.xmladd-01../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/le-num-01/longlemmainfo.xmlle-num-01../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/l-num-02/longlemmainfo.xmll-num-02../../../../../../lib/basic/specs/list-last/export/unit.xmllist-lastnatarray-oarray-sort../../../../../../lib/basic/specs/list-last/export/revert-equal/longlemmainfo.xmlrevert-equal../../../../../../lib/basic/specs/list/export/unit.xmllistnatarray-oarray-sort../../../../../../lib/basic/specs/list/export/app/longlemmainfo.xmlapp../../../../../../lib/basic/specs/list/export/unit.xmllistnatarray-oarray-sort../../../../../../lib/basic/specs/list/export/Nil/longlemmainfo.xmlNil../../../../../../lib/basic/specs/list-perm/export/unit.xmllist-permnatarray-oarray-sort../../../../../../lib/basic/specs/list-perm/export/ref/longlemmainfo.xmlref../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/eq/longlemmainfo.xmleq../../../../../../lib/basic/specs/array-copy/export/unit.xmlarray-copynatarray../../../../../../lib/basic/specs/array-copy/export/subarray-at/longlemmainfo.xmlsubarray-at../../../../../../lib/basic/specs/list-del/export/unit.xmllist-delnatarray-oarray-sort../../../../../../lib/basic/specs/list-del/export/get-zero-01/longlemmainfo.xmlget-zero-01../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/less-zero/longlemmainfo.xmlless-zero../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/ngp-09/longlemmainfo.xmlngp-09../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/prop-07/longlemmainfo.xmlprop-07../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/l-num-06/longlemmainfo.xmll-num-06../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/sub-add/longlemmainfo.xmlsub-add../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/eq-01/longlemmainfo.xmleq-01../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/lep/longlemmainfo.xmllep../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/le-num-05/longlemmainfo.xmlle-num-05../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/l-08/longlemmainfo.xmll-08../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/l-num-01/longlemmainfo.xmll-num-01../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/add-num-03/longlemmainfo.xmladd-num-03../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/l-num-03/longlemmainfo.xmll-num-03../../../../../../lib/basic/specs/nat/export/unit.xmlnat../../../../../../lib/basic/specs/nat/export/add-num-01/longlemmainfo.xmladd-num-01../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/eqs/longlemmainfo.xmleqs../../../../../../lib/basic/specs/list-perm/export/unit.xmllist-permnatarray-oarray-sort../../../../../../lib/basic/specs/list-perm/export/trans/longlemmainfo.xmltrans../../../../../../lib/basic/specs/list/export/unit.xmllistnatarray-oarray-sort../../../../../../lib/basic/specs/list/export/c/longlemmainfo.xmlc../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/eq-write-left/longlemmainfo.xmleq-write-left../../../../../../lib/basic/specs/list-perm/export/unit.xmllist-permnatarray-oarray-sort../../../../../../lib/basic/specs/list-perm/export/cons/longlemmainfo.xmlcons../../../../../../lib/basic/specs/list/export/unit.xmllistnatarray-oarray-sort../../../../../../lib/basic/specs/list/export/c-06/longlemmainfo.xmlc-06../../../../../../lib/basic/specs/list-del/export/unit.xmllist-delnatarray-oarray-sort../../../../../../lib/basic/specs/list-del/export/del1-n/longlemmainfo.xmldel1-n../../../../../../lib/basic/specs/list/export/unit.xmllistnatarray-oarray-sort../../../../../../lib/basic/specs/list/export/in-01/longlemmainfo.xmlin-01../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/nls-fst/longlemmainfo.xmlnls-fst../../../../../../lib/basic/specs/array/export/unit.xmlarraynatarray../../../../../../lib/basic/specs/array/export/Put-other/longlemmainfo.xmlPut-other../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/eq-02/longlemmainfo.xmleq-02../../../../../../lib/basic/specs/nat-basic/export/unit.xmlnat-basic../../../../../../lib/basic/specs/nat-basic/export/z-01/longlemmainfo.xmlz-01