(NOTE-LIB "mc20-2" T) Loading ./yu/mc20-2.lib Finished loading ./yu/mc20-2.lib Loading ./yu/mc20-2.o Loading ./yu/0mc20-2.o Finished loading ./yu/0mc20-2.o Loading ./yu/1mc20-2.o Finished loading ./yu/1mc20-2.o Finished loading ./yu/mc20-2.o (#./yu/mc20-2.lib #./yu/mc20-2) (DEFN MJRTY-CODE NIL '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) Note that (LISTP (MJRTY-CODE)) is a theorem. [ 0.0 0.0 0.0 ] MJRTY-CODE (DEFN MJRTY-CAND (N LST CAND I K) (IF (LESSP I N) (IF (ZEROP K) (MJRTY-CAND N LST (GET-NTH I LST) (ADD1 I) 1) (IF (EQUAL CAND (GET-NTH I LST)) (MJRTY-CAND N LST CAND (ADD1 I) (ADD1 K)) (MJRTY-CAND N LST CAND (ADD1 I) (SUB1 K)))) CAND) ((LESSP (DIFFERENCE N I)))) Linear arithmetic informs us that the measure (DIFFERENCE N I) decreases according to the well-founded relation LESSP in each recursive call. Hence, MJRTY-CAND is accepted under the principle of definition. [ 0.0 0.0 0.0 ] MJRTY-CAND (DEFN MJRTY-K (N LST CAND I K) (IF (LESSP I N) (IF (ZEROP K) (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1) (IF (EQUAL CAND (GET-NTH I LST)) (MJRTY-K N LST CAND (ADD1 I) (ADD1 K)) (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)))) K) ((LESSP (DIFFERENCE N I)))) Linear arithmetic informs us that the measure (DIFFERENCE N I) decreases according to the well-founded relation LESSP in each recursive call. Hence, MJRTY-K is accepted under the principle of definition. Observe that: (OR (NUMBERP (MJRTY-K N LST CAND I K)) (EQUAL (MJRTY-K N LST CAND I K) K)) is a theorem. [ 0.0 0.0 0.0 ] MJRTY-K (DEFN CAND-CNT (N LST CAND I K) (IF (LESSP I N) (IF (EQUAL CAND (GET-NTH I LST)) (CAND-CNT N LST CAND (ADD1 I) (ADD1 K)) (CAND-CNT N LST CAND (ADD1 I) K)) K) ((LESSP (DIFFERENCE N I)))) Linear arithmetic can be used to show that the measure (DIFFERENCE N I) decreases according to the well-founded relation LESSP in each recursive call. Hence, CAND-CNT is accepted under the principle of definition. From the definition we can conclude that: (OR (NUMBERP (CAND-CNT N LST CAND I K)) (EQUAL (CAND-CNT N LST CAND I K) K)) is a theorem. [ 0.0 0.0 0.0 ] CAND-CNT (DEFN MJRTY-P (N LST CAND I K) (IF (ZEROP (MJRTY-K N LST CAND I K)) F (IF (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K)) T (LESSP (QUOTIENT N 2) (CAND-CNT N LST (MJRTY-CAND N LST CAND I K) I K))))) Note that: (OR (FALSEP (MJRTY-P N LST CAND I K)) (TRUEP (MJRTY-P N LST CAND I K))) is a theorem. [ 0.0 0.0 0.0 ] MJRTY-P (DEFN MJRTY-CAND-T (A N LST CAND I K) (IF (LESSP I N) (IF (ZEROP K) (LET ((CAND1 (GET-NTH I LST))) (SPLUS 8 (MJRTY-CAND-T A N LST CAND1 (ADD1 I) 1))) (IF (EQUAL CAND (GET-NTH I LST)) (SPLUS 9 (MJRTY-CAND-T A N LST CAND (ADD1 I) (ADD1 K))) (SPLUS 8 (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))))) (IF (EQUAL CAND (GET-NTH 0 LST)) 18 17)) ((LESSP (DIFFERENCE N I)))) Linear arithmetic can be used to prove that the measure (DIFFERENCE N I) decreases according to the well-founded relation LESSP in each recursive call. Hence, MJRTY-CAND-T is accepted under the principle of definition. Note that: (NUMBERP (MJRTY-CAND-T A N LST CAND I K)) is a theorem. [ 0.0 0.0 0.0 ] MJRTY-CAND-T (DEFN MJRTY-SN-T (A N LST CAND I K) (IF (LESSP I N) (IF (ZEROP K) (LET ((CAND1 (GET-NTH I LST))) (SPLUS 8 (MJRTY-SN-T A N LST CAND1 (ADD1 I) 1))) (IF (EQUAL CAND (GET-NTH I LST)) (SPLUS 9 (MJRTY-SN-T A N LST CAND (ADD1 I) (ADD1 K))) (SPLUS 8 (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (IF (ZEROP K) 11 17)) ((LESSP (DIFFERENCE N I)))) Linear arithmetic establishes that the measure (DIFFERENCE N I) decreases according to the well-founded relation LESSP in each recursive call. Hence, MJRTY-SN-T is accepted under the definitional principle. Note that: (NUMBERP (MJRTY-SN-T A N LST CAND I K)) is a theorem. [ 0.0 0.0 0.0 ] MJRTY-SN-T (DEFN CAND-CNT-T (A N LST CAND I K) (IF (LESSP I N) (IF (EQUAL CAND (GET-NTH I LST)) (SPLUS 6 (CAND-CNT-T A N LST CAND (ADD1 I) (ADD1 K))) (SPLUS 5 (CAND-CNT-T A N LST CAND (ADD1 I) K))) (IF (LESSP (QUOTIENT N 2) K) 14 13)) ((LESSP (DIFFERENCE N I)))) Linear arithmetic informs us that the measure (DIFFERENCE N I) decreases according to the well-founded relation LESSP in each recursive call. Hence, CAND-CNT-T is accepted under the principle of definition. From the definition we can conclude that (NUMBERP (CAND-CNT-T A N LST CAND I K)) is a theorem. [ 0.0 0.0 0.0 ] CAND-CNT-T (DEFN MJRTY-T (A N LST) (LET ((CAND (GET-NTH 0 LST))) (SPLUS 14 (IF (OR (ZEROP (MJRTY-K N LST CAND 1 1)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND 1 1))) (MJRTY-SN-T A N LST CAND 1 1) (SPLUS (MJRTY-CAND-T A N LST CAND 1 1) (IF (EQUAL CAND (MJRTY-CAND N LST CAND 1 1)) (CAND-CNT-T A N LST (MJRTY-CAND N LST CAND 1 1) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST CAND 1 1) 1 0))))))) From the definition we can conclude that (NUMBERP (MJRTY-T A N LST)) is a theorem. [ 0.0 0.0 0.0 ] MJRTY-T (DEFN MJRTY-CAND-INDUCT (S N LST CAND I K) (IF (LESSP I N) (IF (ZEROP K) (LET ((CAND1 (GET-NTH I LST))) (MJRTY-CAND-INDUCT (STEPN S 8) N LST CAND1 (ADD1 I) 1)) (IF (EQUAL CAND (GET-NTH I LST)) (MJRTY-CAND-INDUCT (STEPN S 9) N LST CAND (ADD1 I) (ADD1 K)) (MJRTY-CAND-INDUCT (STEPN S 8) N LST CAND (ADD1 I) (SUB1 K)))) T) ((LESSP (DIFFERENCE N I)))) Linear arithmetic can be used to establish that the measure (DIFFERENCE N I) decreases according to the well-founded relation LESSP in each recursive call. Hence, MJRTY-CAND-INDUCT is accepted under the principle of definition. From the definition we can conclude that: (TRUEP (MJRTY-CAND-INDUCT S N LST CAND I K)) is a theorem. [ 0.0 0.0 0.0 ] MJRTY-CAND-INDUCT (DEFN CAND-CNT-INDUCT (S N LST CAND I K) (IF (LESSP I N) (IF (EQUAL CAND (GET-NTH I LST)) (CAND-CNT-INDUCT (STEPN S 6) N LST CAND (ADD1 I) (ADD1 K)) (CAND-CNT-INDUCT (STEPN S 5) N LST CAND (ADD1 I) K)) T) ((LESSP (DIFFERENCE N I)))) Linear arithmetic informs us that the measure (DIFFERENCE N I) decreases according to the well-founded relation LESSP in each recursive call. Hence, CAND-CNT-INDUCT is accepted under the principle of definition. From the definition we can conclude that (TRUEP (CAND-CNT-INDUCT S N LST CAND I K)) is a theorem. [ 0.0 0.0 0.0 ] CAND-CNT-INDUCT (DEFN MJRTY-STATEP (S A N LST) (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (MC-PC S) (MC-MEM S) 130) (MCODE-ADDRP (MC-PC S) (MC-MEM S) (MJRTY-CODE)) (RAM-ADDRP (SUB 32 20 (READ-SP S)) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 20 (READ-SP S)) 32) (EQUAL A (READ-MEM (ADD 32 (READ-SP S) 4) (MC-MEM S) 4)) (EQUAL N (IREAD-MEM (ADD 32 (READ-SP S) 8) (MC-MEM S) 4)) (NOT (ZEROP N)))) Note that: (OR (FALSEP (MJRTY-STATEP S A N LST)) (TRUEP (MJRTY-STATEP S A N LST))) is a theorem. [ 0.0 0.0 0.0 ] MJRTY-STATEP (DEFN MJRTY-S0P (S A N LST CAND I K) (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) (MJRTY-CODE)) (RAM-ADDRP (SUB 32 16 (READ-AN 32 6 S)) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-AN 32 6 S)) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (ZEROP N)) (NUMBERP I) (NUMBERP K) (LEQ K I))) From the definition we can conclude that: (OR (FALSEP (MJRTY-S0P S A N LST CAND I K)) (TRUEP (MJRTY-S0P S A N LST CAND I K))) is a theorem. [ 0.0 0.0 0.0 ] MJRTY-S0P (DEFN MJRTY-S1P (S A N LST CAND I K) (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) (MJRTY-CODE)) (RAM-ADDRP (SUB 32 16 (READ-AN 32 6 S)) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-AN 32 6 S)) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (ZEROP N)) (NUMBERP I) (NUMBERP K) (LEQ K I))) Note that: (OR (FALSEP (MJRTY-S1P S A N LST CAND I K)) (TRUEP (MJRTY-S1P S A N LST CAND I K))) is a theorem. [ 0.0 0.0 0.0 ] MJRTY-S1P (PROVE-LEMMA MJRTY-S-S0 (REWRITE) (LET ((CAND (GET-NTH 0 LST))) (IMPLIES (MJRTY-STATEP S A N LST) (AND (MJRTY-S0P (STEPN S 14) A N LST CAND 1 1) (EQUAL (LINKED-RTS-ADDR (STEPN S 14)) (RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 14)) (READ-AN 32 6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 14))) (SUB 32 4 (READ-SP S))) (EQUAL (MOVEM-SAVED (STEPN S 14) 4 16 4) (READM-RN 32 '(2 3 4 5) (MC-RFILE S)))))) ((DISABLE TIMES))) WARNING: Note that the rewrite rule MJRTY-S-S0 will be stored so as to apply only to terms with the nonrecursive function symbol MJRTY-S0P. WARNING: Note that the rewrite rule MJRTY-S-S0 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-RTS-ADDR. WARNING: Note that MJRTY-S-S0 contains the free variables LST, N, and A which will be chosen by instantiating the hypothesis (MJRTY-STATEP S A N LST). WARNING: Note that the rewrite rule MJRTY-S-S0 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-A6. WARNING: Note that MJRTY-S-S0 contains the free variables LST, N, and A which will be chosen by instantiating the hypothesis (MJRTY-STATEP S A N LST). WARNING: Note that MJRTY-S-S0 contains the free variables LST, N, and A which will be chosen by instantiating the hypothesis (MJRTY-STATEP S A N LST). WARNING: Note that the rewrite rule MJRTY-S-S0 will be stored so as to apply only to terms with the nonrecursive function symbol MOVEM-SAVED. WARNING: Note that MJRTY-S-S0 contains the free variables LST, N, and A which will be chosen by instantiating the hypothesis (MJRTY-STATEP S A N LST). WARNING: Note that the proposed lemma MJRTY-S-S0 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and five replacement rules. This formula can be simplified, using the abbreviations MJRTY-CODE, MJRTY-STATEP, IMPLIES, SP, L, READ-SP, and READ-AN, to the new formula: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (MC-PC S) (MC-MEM S) 130) (MCODE-ADDRP (MC-PC S) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 20 (READ-RN 32 (PLUS 8 7) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 20 (READ-RN 32 (PLUS 8 7) (MC-RFILE S))) 32) (EQUAL A (READ-MEM (ADD 32 (READ-RN 32 (PLUS 8 7) (MC-RFILE S)) 4) (MC-MEM S) 4)) (EQUAL N (IREAD-MEM (ADD 32 (READ-RN 32 (PLUS 8 7) (MC-RFILE S)) 8) (MC-MEM S) 4)) (NOT (EQUAL N 0)) (NUMBERP N)) (AND (MJRTY-S0P (STEPN S 14) A N LST (GET-NTH 0 LST) 1 1) (EQUAL (LINKED-RTS-ADDR (STEPN S 14)) (RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 14)) (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 14))) (SUB 32 4 (READ-RN 32 (PLUS 8 7) (MC-RFILE S)))) (EQUAL (MOVEM-SAVED (STEPN S 14) 4 16 4) (READM-RN 32 '(2 3 4 5) (MC-RFILE S))))), which simplifies, using linear arithmetic, rewriting with the lemmas SUB-NEG, WRITE-MEMP-RAM3, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE1, PC-READ-MEMP-ROM1, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE0, PC-READ-MEMP-ROM0, READM-WRITE-RN, CAR-CONS, WRITE-MEM-MAINTAIN-WRITE-MEMP, CDR-CONS, READ-WRITE-RN, HEAD-LEMMA, WRITE-WRITE-RN, PC-READ-MEM-WRITE-MEM, WRITE-MEM-MAINTAIN-PC-READ-MEMP, ADD-EVENP, WRITEM-MEM-MAINTAIN-READ-MEMP, WRITE-MEMP->READ-MEMP, READ-WRITEM-MEM, READ-WRITE-MEM1, DISJOINT-DEDUCTION2, READ-MEM-NAT-RANGEP, EXT-LEMMA, PC-READ-MEM-WRITEM-MEM, READM-RN-LEN, WRITEM-MEM-MAINTAIN-PC-READ-MEMP, SET-SET-CVZNX1, SET-CVZNX-X, SET-CVZNX-NAT-RANGEP, BITP-FIX-BIT, FIX-BIT-BITP, BLE-BGT, SUB-BGT, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, SUB-V-BITP, CORRECTNESS-OF-CANCEL-LESSP-TIMES, WRITE-MEMP-RAM0, ADD-0, DISJOINT-10, STEPN-REWRITER0, STEPN-REWRITER, IREAD-MEM-GET0, WRITEM-ELSE-MEM-ILST, WRITE-ELSE-MEM-ILST, RAM-ADDRP-LA2, PLUS-0, PLUS-COMMUTATIVITY, WRITEM-MEM-MAINTAIN-RAM-ADDRP, WRITE-MEM-MAINTAIN-RAM-ADDRP, RAM-ADDRP-3, WRITEM-MEM-MCODE-ADDRP, WRITE-MEM-MCODE-ADDRP, WRITEM-MEM-MAINTAIN-ROM-ADDRP, WRITE-MEM-MAINTAIN-ROM-ADDRP, ROM-ADDRP-LA2, INDEX-N-X-X, MC-PC-RANGEP, DISJOINT-DEDUCTION1, HEAD-READ-RN, READ-WRITE-MEM2, READM-WRITEM-MEM, and MODN-READM-RN, and expanding the definitions of PLUS, NEG, TIMES, IREAD-MEM, EXECUTE-INS, OPCODE-FIELD, EQUAL, UNLK-SUBGROUP, S_RN, LINK-MAPPING, LSZ, READ-AN, SP, READ-SP, INDEX-N, UPDATE-RFILE, WRITE-AN, WRITE-SP, UPDATE-MEM, ADD, EXT, W, LINK_W-INS, B0P, BITN, MISC-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, STEPI, EXT-SUBGROUP, S_MODE, N-MEMBER, MOVEM-PRE-RNLST, WRITEMP, MOVEM-PREDEC, NUMBERP, OP-SZ, B, PRE-EFFECT, MOVEM-LEN, PREDEC-MODEP, MOVEM-RN-EA-INS, EVENP, MOVEA-INS, MOVEA-ADDR-MODEP, EFFEC-ADDR, ADDR-DISP, MC-INSTATE, MC-HALTP, DISJOINT, OPERAND, D_RN, D_MODE, MOVE-GROUP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, CAR, CDR, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, CONS, DN-DIRECT, MOVE-MAPPING, CLR-SUBGROUP, OP-LEN, Q, CLR-EFFECT, B1, CLR-CVZNX, CLR-ADDR-MODEP, CLR-INS, CMP-INS, CMP-ADDR-MODEP, READ-DN, HEAD, CMP-CVZNX, UPDATE-CCR, CMP-GROUP, BCC-RA-SR, B-NOT, ILESSP, NEGP, NAT-TO-INT, NAT-RANGEP, BRANCH-CC, COND-FIELD, BCC-GROUP, TST-SUBGROUP, MOVE-Z, MOVE-N, TST-ADDR-MODEP, TST-INS, BEQ, FIX-BIT, AND, NOT, ZEROP, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, ASL, ADDR-INDEX-DISP, ADDR-INDEX, MOVEQ-INS, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, ADD-EFFECT, ADD-MAPPING, SCC-GROUP, MJRTY-CODE, MJRTY-S0P, LINKED-RTS-ADDR, RTS-ADDR, UINT-RANGEP, LINKED-A6, and MOVEM-SAVED, to: T. Q.E.D. [ 0.0 2.4 0.0 ] MJRTY-S-S0 (PROVE-LEMMA MJRTY-S-S0-RFILE (REWRITE) (IMPLIES (AND (MJRTY-STATEP S A N LST) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 14))) (READ-RN OPLEN RN (MC-RFILE S)))) ((DISABLE TIMES))) WARNING: Note that MJRTY-S-S0-RFILE contains the free variables LST, N, and A which will be chosen by instantiating the hypothesis (MJRTY-STATEP S A N LST). This formula can be simplified, using the abbreviations D2-7A2-5P, D4-7A2-5P, D6-7A2-5P, SP, L, READ-AN, READ-SP, MJRTY-CODE, MJRTY-STATEP, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (MC-PC S) (MC-MEM S) 130) (MCODE-ADDRP (MC-PC S) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 20 (READ-RN 32 (PLUS 8 7) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 20 (READ-RN 32 (PLUS 8 7) (MC-RFILE S))) 32) (EQUAL A (READ-MEM (ADD 32 (READ-RN 32 (PLUS 8 7) (MC-RFILE S)) 4) (MC-MEM S) 4)) (EQUAL N (IREAD-MEM (ADD 32 (READ-RN 32 (PLUS 8 7) (MC-RFILE S)) 8) (MC-MEM S) 4)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 14))) (READ-RN OPLEN RN (MC-RFILE S)))), which simplifies, applying SUB-NEG, WRITE-MEMP-RAM3, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE1, PC-READ-MEMP-ROM1, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE0, PC-READ-MEMP-ROM0, READM-WRITE-RN, CAR-CONS, WRITE-MEM-MAINTAIN-WRITE-MEMP, CDR-CONS, READ-WRITE-RN, HEAD-LEMMA, WRITE-WRITE-RN, PC-READ-MEM-WRITE-MEM, WRITE-MEM-MAINTAIN-PC-READ-MEMP, ADD-EVENP, WRITEM-MEM-MAINTAIN-READ-MEMP, WRITE-MEMP->READ-MEMP, READ-WRITEM-MEM, READ-WRITE-MEM1, DISJOINT-DEDUCTION2, READ-MEM-NAT-RANGEP, EXT-LEMMA, PC-READ-MEM-WRITEM-MEM, READM-RN-LEN, WRITEM-MEM-MAINTAIN-PC-READ-MEMP, SET-SET-CVZNX1, SET-CVZNX-X, SET-CVZNX-NAT-RANGEP, BITP-FIX-BIT, FIX-BIT-BITP, BLE-BGT, SUB-BGT, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, SUB-V-BITP, CORRECTNESS-OF-CANCEL-LESSP-TIMES, WRITE-MEMP-RAM0, ADD-0, DISJOINT-10, STEPN-REWRITER0, and STEPN-REWRITER, and opening up the definitions of PLUS, NEG, TIMES, IREAD-MEM, EXECUTE-INS, OPCODE-FIELD, EQUAL, UNLK-SUBGROUP, S_RN, LINK-MAPPING, LSZ, READ-AN, SP, READ-SP, INDEX-N, UPDATE-RFILE, WRITE-AN, WRITE-SP, UPDATE-MEM, ADD, EXT, W, LINK_W-INS, B0P, BITN, MISC-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, STEPI, EXT-SUBGROUP, S_MODE, N-MEMBER, MOVEM-PRE-RNLST, WRITEMP, MOVEM-PREDEC, NUMBERP, OP-SZ, B, PRE-EFFECT, MOVEM-LEN, PREDEC-MODEP, MOVEM-RN-EA-INS, EVENP, MOVEA-INS, MOVEA-ADDR-MODEP, EFFEC-ADDR, ADDR-DISP, MC-INSTATE, MC-HALTP, DISJOINT, OPERAND, D_RN, D_MODE, MOVE-GROUP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, CAR, CDR, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, CONS, DN-DIRECT, MOVE-MAPPING, CLR-SUBGROUP, OP-LEN, Q, CLR-EFFECT, B1, CLR-CVZNX, CLR-ADDR-MODEP, CLR-INS, CMP-INS, CMP-ADDR-MODEP, READ-DN, HEAD, CMP-CVZNX, UPDATE-CCR, CMP-GROUP, BCC-RA-SR, B-NOT, ILESSP, NEGP, NAT-TO-INT, NAT-RANGEP, BRANCH-CC, COND-FIELD, BCC-GROUP, TST-SUBGROUP, MOVE-Z, MOVE-N, TST-ADDR-MODEP, TST-INS, BEQ, FIX-BIT, AND, NOT, ZEROP, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, ASL, ADDR-INDEX-DISP, ADDR-INDEX, MOVEQ-INS, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, ADD-EFFECT, ADD-MAPPING, and SCC-GROUP, to: T. Q.E.D. [ 0.0 0.5 0.1 ] MJRTY-S-S0-RFILE (PROVE-LEMMA MJRTY-S-S0-MEM (REWRITE) (IMPLIES (AND (MJRTY-STATEP S A N LST) (DISJOINT (SUB 32 20 (READ-SP S)) 32 X K)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 14)) K) (READ-MEM X (MC-MEM S) K))) ((DISABLE TIMES))) WARNING: Note that MJRTY-S-S0-MEM contains the free variables LST, N, and A which will be chosen by instantiating the hypothesis (MJRTY-STATEP S A N LST). This conjecture can be simplified, using the abbreviations MJRTY-CODE, MJRTY-STATEP, AND, IMPLIES, SP, L, READ-AN, and READ-SP, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (MC-PC S) (MC-MEM S) 130) (MCODE-ADDRP (MC-PC S) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 20 (READ-RN 32 (PLUS 8 7) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 20 (READ-RN 32 (PLUS 8 7) (MC-RFILE S))) 32) (EQUAL A (READ-MEM (ADD 32 (READ-RN 32 (PLUS 8 7) (MC-RFILE S)) 4) (MC-MEM S) 4)) (EQUAL N (IREAD-MEM (ADD 32 (READ-RN 32 (PLUS 8 7) (MC-RFILE S)) 8) (MC-MEM S) 4)) (NOT (EQUAL N 0)) (NUMBERP N) (DISJOINT (SUB 32 20 (READ-RN 32 (PLUS 8 7) (MC-RFILE S))) 32 X K)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 14)) K) (READ-MEM X (MC-MEM S) K))). This simplifies, using linear arithmetic, rewriting with SUB-NEG, WRITE-MEMP-RAM3, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE1, PC-READ-MEMP-ROM1, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE0, PC-READ-MEMP-ROM0, READM-WRITE-RN, CAR-CONS, WRITE-MEM-MAINTAIN-WRITE-MEMP, CDR-CONS, READ-WRITE-RN, HEAD-LEMMA, WRITE-WRITE-RN, PC-READ-MEM-WRITE-MEM, WRITE-MEM-MAINTAIN-PC-READ-MEMP, ADD-EVENP, WRITEM-MEM-MAINTAIN-READ-MEMP, WRITE-MEMP->READ-MEMP, READ-WRITEM-MEM, READ-WRITE-MEM1, DISJOINT-DEDUCTION2, READ-MEM-NAT-RANGEP, EXT-LEMMA, PC-READ-MEM-WRITEM-MEM, READM-RN-LEN, WRITEM-MEM-MAINTAIN-PC-READ-MEMP, SET-SET-CVZNX1, SET-CVZNX-X, SET-CVZNX-NAT-RANGEP, BITP-FIX-BIT, FIX-BIT-BITP, BLE-BGT, SUB-BGT, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, SUB-V-BITP, CORRECTNESS-OF-CANCEL-LESSP-TIMES, WRITE-MEMP-RAM0, ADD-0, DISJOINT-10, STEPN-REWRITER0, STEPN-REWRITER, and DISJOINT-6~, and unfolding PLUS, NEG, TIMES, IREAD-MEM, EXECUTE-INS, OPCODE-FIELD, EQUAL, UNLK-SUBGROUP, S_RN, LINK-MAPPING, LSZ, READ-AN, SP, READ-SP, INDEX-N, UPDATE-RFILE, WRITE-AN, WRITE-SP, UPDATE-MEM, ADD, EXT, W, LINK_W-INS, B0P, BITN, MISC-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, STEPI, EXT-SUBGROUP, S_MODE, N-MEMBER, MOVEM-PRE-RNLST, WRITEMP, MOVEM-PREDEC, NUMBERP, OP-SZ, B, PRE-EFFECT, MOVEM-LEN, PREDEC-MODEP, MOVEM-RN-EA-INS, EVENP, MOVEA-INS, MOVEA-ADDR-MODEP, EFFEC-ADDR, ADDR-DISP, MC-INSTATE, MC-HALTP, DISJOINT, OPERAND, D_RN, D_MODE, MOVE-GROUP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, CAR, CDR, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, CONS, DN-DIRECT, MOVE-MAPPING, CLR-SUBGROUP, OP-LEN, Q, CLR-EFFECT, B1, CLR-CVZNX, CLR-ADDR-MODEP, CLR-INS, CMP-INS, CMP-ADDR-MODEP, READ-DN, HEAD, CMP-CVZNX, UPDATE-CCR, CMP-GROUP, BCC-RA-SR, B-NOT, ILESSP, NEGP, NAT-TO-INT, NAT-RANGEP, BRANCH-CC, COND-FIELD, BCC-GROUP, TST-SUBGROUP, MOVE-Z, MOVE-N, TST-ADDR-MODEP, TST-INS, BEQ, FIX-BIT, AND, NOT, ZEROP, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, ASL, ADDR-INDEX-DISP, ADDR-INDEX, MOVEQ-INS, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, ADD-EFFECT, ADD-MAPPING, and SCC-GROUP, to: T. Q.E.D. [ 0.0 0.6 0.0 ] MJRTY-S-S0-MEM (PROVE-LEMMA MJRTY-S0-SN-BASE-1 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (NOT (LESSP I N)) (ZEROP K)) (AND (EQUAL (MC-STATUS (STEPN S 11)) 'RUNNING) (EQUAL (MC-PC (STEPN S 11)) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S 11)) CAND) (EQUAL (IREAD-DN 32 1 (STEPN S 11)) 0) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 11))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 11))) (ADD 32 (READ-AN 32 6 S) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 11)) L) (READ-MEM X (MC-MEM S) L))))) WARNING: Note that MJRTY-S0-SN-BASE-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-SN-BASE-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-SN-BASE-1 will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that MJRTY-S0-SN-BASE-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-SN-BASE-1 will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that MJRTY-S0-SN-BASE-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-SN-BASE-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-SN-BASE-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-SN-BASE-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the proposed lemma MJRTY-S0-SN-BASE-1 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and seven replacement rules. This conjecture can be simplified, using the abbreviations NOT, MJRTY-CODE, MJRTY-S0P, AND, IMPLIES, and READ-AN, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (ZEROP K)) (AND (EQUAL (MC-STATUS (STEPN S 11)) 'RUNNING) (EQUAL (MC-PC (STEPN S 11)) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S 11)) CAND) (EQUAL (IREAD-DN 32 1 (STEPN S 11)) 0) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 11))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 11))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE S)) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 11)) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, applying the lemmas SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, FIX-BIT-BITP, READ-WRITE-RN, MOVE-BEQ-INT-1, MOVE-Z-BITP, HEAD-READ-RN, READ-MEMP-RAM3, READ-MEMP-RAM2, READ-WRITEM-RN, HEAD-LEMMA, STEPN-REWRITER0, STEPN-REWRITER, and READ-MEM-NAT-RANGEP, and opening up the definitions of NEG, PLUS, ZEROP, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, TST-SUBGROUP, NUMBERP, TST-ADDR-MODEP, TST-INS, MISC-GROUP, CLR-SUBGROUP, CLR-EFFECT, B1, CLR-CVZNX, CLR-ADDR-MODEP, CLR-INS, MOVE-N, MOVE-Z, MOVEM-EA-RN-SUBGROUP, UPDATE-RFILE, MOVEM-RNLST, READMP, OP-SZ, MOVEM-LEN, TIMES, W, READ-AN, ADDR-DISP, MOVEM-EA-RN-ADDR-MODEP, POSTINC-MODEP, MOVEM-EA-RN-INS, UNLK-SUBGROUP, WRITE-SP, SP, WRITE-AN, LONG-READ, LONG-READP, LSZ, N-MEMBER, UNLK-INS, NOP-SUBGROUP, RTD-MAPPING, READ-SP, RTS-INS, LINKED-RTS-ADDR, IREAD-DN, NAT-TO-INT, LINKED-A6, and AND, to: T. Q.E.D. [ 0.0 0.8 0.0 ] MJRTY-S0-SN-BASE-1 (PROVE-LEMMA MJRTY-S0-SN-BASE-2 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (NOT (LESSP I N)) (NOT (ZEROP K)) (LESSP (QUOTIENT N 2) K)) (AND (EQUAL (MC-STATUS (STEPN S 17)) 'RUNNING) (EQUAL (MC-PC (STEPN S 17)) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S 17)) CAND) (EQUAL (IREAD-DN 32 1 (STEPN S 17)) 1) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 17))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 17))) (ADD 32 (READ-AN 32 6 S) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 17)) L) (READ-MEM X (MC-MEM S) L)))) ((ENABLE IQUOTIENT))) WARNING: Note that MJRTY-S0-SN-BASE-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-SN-BASE-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-SN-BASE-2 will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that MJRTY-S0-SN-BASE-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-SN-BASE-2 will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that MJRTY-S0-SN-BASE-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-SN-BASE-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-SN-BASE-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-SN-BASE-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the proposed lemma MJRTY-S0-SN-BASE-2 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and seven replacement rules. This formula can be simplified, using the abbreviations ZEROP, NOT, MJRTY-CODE, MJRTY-S0P, AND, IMPLIES, and READ-AN, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (NOT (EQUAL K 0)) (LESSP (QUOTIENT N 2) K)) (AND (EQUAL (MC-STATUS (STEPN S 17)) 'RUNNING) (EQUAL (MC-PC (STEPN S 17)) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S 17)) CAND) (EQUAL (IREAD-DN 32 1 (STEPN S 17)) 1) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 17))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 17))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE S)) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 17)) L) (READ-MEM X (MC-MEM S) L)))), which simplifies, applying SUB-NEG, QUOTIENT-TIMES-LESSP, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, FIX-BIT-BITP, READ-WRITE-RN, MOVE-BEQ-INT-0, MOVE-Z-BITP, BGE-V0, MOVE-BMI, MOVE-N-BITP, WRITE-WRITE-RN, HEAD-READ-RN, HEAD-LEMMA, ASR-NAT-RANGEP, ASR-C-BITP, SUB-BGE, ASR-INT, READ-MEMP-RAM3, READ-MEMP-RAM2, READ-WRITEM-RN, STEPN-REWRITER0, STEPN-REWRITER, and READ-MEM-NAT-RANGEP, and opening up NEG, PLUS, EQUAL, NUMBERP, EXECUTE-INS, OPCODE-FIELD, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, TST-SUBGROUP, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, FIX-BIT, REGISTER-SHIFT-ROTATE, ASR-EFFECT, ASR-X, ASR-CVZNX, SR-CNT, I-DATA, REGISTER-ASR-INS, S&R-GROUP, IQUOTIENT, EXP, MOVE-N, MOVE-Z, MOVEQ-INS, MOVEM-EA-RN-SUBGROUP, UPDATE-RFILE, MOVEM-RNLST, READMP, OP-SZ, MOVEM-LEN, TIMES, W, READ-AN, ADDR-DISP, MOVEM-EA-RN-ADDR-MODEP, POSTINC-MODEP, MOVEM-EA-RN-INS, UNLK-SUBGROUP, WRITE-SP, SP, WRITE-AN, LONG-READ, LONG-READP, LSZ, N-MEMBER, UNLK-INS, NOP-SUBGROUP, RTD-MAPPING, READ-SP, RTS-INS, LINKED-RTS-ADDR, IREAD-DN, NAT-TO-INT, LINKED-A6, and AND, to: T. Q.E.D. [ 0.0 1.4 0.0 ] MJRTY-S0-SN-BASE-2 (PROVE-LEMMA MJRTY-S0-SN-RFILE-BASE-1 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (NOT (LESSP I N)) (ZEROP K) (D2-7A2-5P RN) (LEQ OPLEN 32)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4)))))) WARNING: Note that MJRTY-S0-SN-RFILE-BASE-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). This conjecture can be simplified, using the abbreviations D2-7A2-5P, NOT, READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (ZEROP K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))). This simplifies, applying SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, FIX-BIT-BITP, READ-WRITE-RN, MOVE-BEQ-INT-1, MOVE-Z-BITP, HEAD-READ-RN, READ-MEMP-RAM3, READ-MEMP-RAM2, READ-WRITEM-RN, HEAD-LEMMA, STEPN-REWRITER0, STEPN-REWRITER, and NAT-RANGEP-OF-0, and expanding the definitions of NEG, PLUS, ZEROP, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, TST-SUBGROUP, NUMBERP, TST-ADDR-MODEP, TST-INS, MISC-GROUP, CLR-SUBGROUP, CLR-EFFECT, B1, CLR-CVZNX, CLR-ADDR-MODEP, CLR-INS, MOVE-N, MOVE-Z, MOVEM-EA-RN-SUBGROUP, UPDATE-RFILE, MOVEM-RNLST, READMP, OP-SZ, MOVEM-LEN, TIMES, W, READ-AN, ADDR-DISP, MOVEM-EA-RN-ADDR-MODEP, POSTINC-MODEP, MOVEM-EA-RN-INS, UNLK-SUBGROUP, WRITE-SP, SP, WRITE-AN, LONG-READ, LONG-READP, LSZ, N-MEMBER, UNLK-INS, NOP-SUBGROUP, RTD-MAPPING, READ-SP, RTS-INS, LISTP, D4-7A2-5P, D2-7A2-5P, D6-7A2-5P, and MOVEM-SAVED, to two new conjectures: Case 2. (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) 130) (MCODE-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 32) (RAM-ADDRP (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (MEM-ILST 4 (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) LST) (DISJOINT (READ-RN 32 8 (MC-RFILE S)) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) 32) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) 0)) (NUMBERP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (EQUAL (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32) 0) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (EQUAL 5 RN)) (EQUAL 0 (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, clearly, to: T. Case 1. (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) 130) (MCODE-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 32) (RAM-ADDRP (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (MEM-ILST 4 (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) LST) (DISJOINT (READ-RN 32 8 (MC-RFILE S)) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) 32) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) 0)) (NUMBERP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (EQUAL (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32) 0) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (NOT (EQUAL 5 RN)) (EQUAL 4 RN)) (EQUAL (READ-RN OPLEN 3 (MC-RFILE S)) (READ-RN OPLEN RN (MC-RFILE S)))). This again simplifies, obviously, to: T. Q.E.D. [ 0.0 0.1 0.0 ] MJRTY-S0-SN-RFILE-BASE-1 (PROVE-LEMMA MJRTY-S0-SN-RFILE-BASE-2 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (NOT (LESSP I N)) (NOT (ZEROP K)) (LESSP (QUOTIENT N 2) K) (D2-7A2-5P RN) (LEQ OPLEN 32)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 17))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))) ((ENABLE IQUOTIENT))) WARNING: Note that MJRTY-S0-SN-RFILE-BASE-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). This formula can be simplified, using the abbreviations D2-7A2-5P, ZEROP, NOT, READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (NOT (EQUAL K 0)) (LESSP (QUOTIENT N 2) K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 17))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))), which simplifies, applying SUB-NEG, QUOTIENT-TIMES-LESSP, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, FIX-BIT-BITP, READ-WRITE-RN, MOVE-BEQ-INT-0, MOVE-Z-BITP, BGE-V0, MOVE-BMI, MOVE-N-BITP, WRITE-WRITE-RN, HEAD-READ-RN, HEAD-LEMMA, ASR-NAT-RANGEP, ASR-C-BITP, SUB-BGE, ASR-INT, READ-MEMP-RAM3, READ-MEMP-RAM2, READ-WRITEM-RN, STEPN-REWRITER0, and STEPN-REWRITER, and expanding the definitions of NEG, PLUS, EQUAL, NUMBERP, EXECUTE-INS, OPCODE-FIELD, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, TST-SUBGROUP, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, FIX-BIT, REGISTER-SHIFT-ROTATE, ASR-EFFECT, ASR-X, ASR-CVZNX, SR-CNT, I-DATA, REGISTER-ASR-INS, S&R-GROUP, IQUOTIENT, EXP, MOVE-N, MOVE-Z, MOVEQ-INS, MOVEM-EA-RN-SUBGROUP, UPDATE-RFILE, MOVEM-RNLST, READMP, OP-SZ, MOVEM-LEN, TIMES, W, READ-AN, ADDR-DISP, MOVEM-EA-RN-ADDR-MODEP, POSTINC-MODEP, MOVEM-EA-RN-INS, UNLK-SUBGROUP, WRITE-SP, SP, WRITE-AN, LONG-READ, LONG-READP, LSZ, N-MEMBER, UNLK-INS, NOP-SUBGROUP, RTD-MAPPING, READ-SP, RTS-INS, LISTP, D4-7A2-5P, D2-7A2-5P, D6-7A2-5P, and MOVEM-SAVED, to the following two new conjectures: Case 2. (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) 130) (MCODE-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 32) (RAM-ADDRP (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (MEM-ILST 4 (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) LST) (DISJOINT (READ-RN 32 8 (MC-RFILE S)) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) 32) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) 0)) (NUMBERP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32) 0)) (LESSP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) (TIMES 2 (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (EQUAL 5 RN)) (EQUAL (HEAD 1 OPLEN) (READ-RN OPLEN RN (MC-RFILE S)))). This again simplifies, obviously, to: T. Case 1. (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) 130) (MCODE-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 32) (RAM-ADDRP (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (MEM-ILST 4 (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) LST) (DISJOINT (READ-RN 32 8 (MC-RFILE S)) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) 32) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) 0)) (NUMBERP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32) 0)) (LESSP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) (TIMES 2 (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (NOT (EQUAL 5 RN)) (EQUAL 4 RN)) (EQUAL (READ-RN OPLEN 3 (MC-RFILE S)) (READ-RN OPLEN RN (MC-RFILE S)))). This again simplifies, trivially, to: T. Q.E.D. [ 0.0 0.3 0.0 ] MJRTY-S0-SN-RFILE-BASE-2 (PROVE-LEMMA ADD1-INT-RANGEP (REWRITE) (IMPLIES (LESSP X (NAT-TO-INT Y N)) (INT-RANGEP (ADD1 X) N)) ((ENABLE INT-RANGEP NAT-TO-INT))) WARNING: Note that ADD1-INT-RANGEP contains the free variable Y which will be chosen by instantiating the hypothesis (LESSP X (NAT-TO-INT Y N)). This formula simplifies, applying SUB1-ADD1, INTEGERP-FIX-INT, and NUMBERP-INTEGERP, and opening up the functions NAT-TO-INT, LESSP, and INT-RANGEP, to the following 15 new formulas: Case 15.(IMPLIES (AND (NOT (LESSP Y (EXP 2 (SUB1 N)))) (LESSP X (MINUS (DIFFERENCE (EXP 2 N) Y)))) (NOT (EQUAL N 0))). But this again simplifies, using linear arithmetic, to: T. Case 14.(IMPLIES (AND (NOT (LESSP Y (EXP 2 (SUB1 N)))) (LESSP X (MINUS (DIFFERENCE (EXP 2 N) Y)))) (NUMBERP N)), which again simplifies, using linear arithmetic, to: T. Case 13.(IMPLIES (AND (NOT (LESSP Y (EXP 2 (SUB1 N)))) (LESSP X (MINUS (DIFFERENCE (EXP 2 N) Y)))) (NOT (EQUAL (EXP 2 (SUB1 N)) 0))), which again simplifies, using linear arithmetic, to: T. Case 12.(IMPLIES (AND (NOT (LESSP Y (EXP 2 (SUB1 N)))) (LESSP X (MINUS (DIFFERENCE (EXP 2 N) Y))) (NOT (NUMBERP X))) (LESSP 0 (SUB1 (EXP 2 (SUB1 N))))), which again simplifies, using linear arithmetic, to: T. Case 11.(IMPLIES (AND (NOT (LESSP Y (EXP 2 (SUB1 N)))) (LESSP X (MINUS (DIFFERENCE (EXP 2 N) Y))) (NUMBERP X)) (LESSP X (SUB1 (EXP 2 (SUB1 N))))), which again simplifies, using linear arithmetic, to: T. Case 10.(IMPLIES (AND (LESSP Y (EXP 2 (SUB1 N))) (NUMBERP Y) (LESSP X Y)) (NOT (EQUAL N 0))), which again simplifies, rewriting with LESSP-OF-1, and expanding the functions SUB1, EXP, NUMBERP, EQUAL, and LESSP, to: T. Case 9. (IMPLIES (AND (LESSP Y (EXP 2 (SUB1 N))) (NUMBERP Y) (LESSP X Y)) (NUMBERP N)). However this again simplifies, appealing to the lemmas SUB1-NNUMBERP and LESSP-OF-1, and opening up the functions EXP, NUMBERP, EQUAL, and LESSP, to: T. Case 8. (IMPLIES (AND (LESSP Y (EXP 2 (SUB1 N))) (NUMBERP Y) (LESSP X Y)) (NOT (EQUAL (EXP 2 (SUB1 N)) 0))), which again simplifies, using linear arithmetic, to: T. Case 7. (IMPLIES (AND (LESSP Y (EXP 2 (SUB1 N))) (NUMBERP Y) (LESSP X Y) (NOT (NUMBERP X))) (LESSP 0 (SUB1 (EXP 2 (SUB1 N))))), which again simplifies, using linear arithmetic, to: T. Case 6. (IMPLIES (AND (LESSP Y (EXP 2 (SUB1 N))) (NUMBERP Y) (LESSP X Y) (NUMBERP X)) (LESSP X (SUB1 (EXP 2 (SUB1 N))))), which again simplifies, using linear arithmetic, to: T. Case 5. (IMPLIES (AND (LESSP Y (EXP 2 (SUB1 N))) (NOT (NUMBERP Y)) (LESSP X 0)) (NOT (EQUAL N 0))), which again simplifies, using linear arithmetic, to: T. Case 4. (IMPLIES (AND (LESSP Y (EXP 2 (SUB1 N))) (NOT (NUMBERP Y)) (LESSP X 0)) (NUMBERP N)), which again simplifies, using linear arithmetic, to: T. Case 3. (IMPLIES (AND (LESSP Y (EXP 2 (SUB1 N))) (NOT (NUMBERP Y)) (LESSP X 0)) (NOT (EQUAL (EXP 2 (SUB1 N)) 0))), which again simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (LESSP Y (EXP 2 (SUB1 N))) (NOT (NUMBERP Y)) (LESSP X 0) (NOT (NUMBERP X))) (LESSP 0 (SUB1 (EXP 2 (SUB1 N))))), which again simplifies, using linear arithmetic, to: T. Case 1. (IMPLIES (AND (LESSP Y (EXP 2 (SUB1 N))) (NOT (NUMBERP Y)) (LESSP X 0) (NUMBERP X)) (LESSP X (SUB1 (EXP 2 (SUB1 N))))), which again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.0 0.0 0.0 ] ADD1-INT-RANGEP (ENABLE IPLUS) [ 0.0 0.0 0.0 ] IPLUS-ON (PROVE-LEMMA MJRTY-S0-S0-1 (REWRITE) (LET ((CAND1 (GET-NTH I LST))) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (LESSP I N) (ZEROP K)) (AND (MJRTY-S0P (STEPN S 8) A N LST CAND1 (ADD1 I) 1) (EQUAL (LINKED-RTS-ADDR (STEPN S 8)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 8)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 8))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 8) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 8)) L) (READ-MEM X (MC-MEM S) L))))) ((DISABLE TIMES LESSP))) WARNING: Note that the rewrite rule MJRTY-S0-S0-1 will be stored so as to apply only to terms with the nonrecursive function symbol MJRTY-S0P. WARNING: Note that MJRTY-S0-S0-1 contains the free variables K and CAND which will be chosen by instantiating the hypothesis (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S0-1 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-RTS-ADDR. WARNING: Note that MJRTY-S0-S0-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S0-1 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-A6. WARNING: Note that MJRTY-S0-S0-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-S0-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S0-1 will be stored so as to apply only to terms with the nonrecursive function symbol MOVEM-SAVED. WARNING: Note that MJRTY-S0-S0-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-S0-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the proposed lemma MJRTY-S0-S0-1 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and six replacement rules. This formula can be simplified, using the abbreviations READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to the new formula: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (LESSP I N) (ZEROP K)) (AND (MJRTY-S0P (STEPN S 8) A N LST (GET-NTH I LST) (ADD1 I) 1) (EQUAL (LINKED-RTS-ADDR (STEPN S 8)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 8)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 8))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 8) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 8)) L) (READ-MEM X (MC-MEM S) L)))), which simplifies, using linear arithmetic, rewriting with SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, MOVE-BEQ-INT-1, MOVE-Z-BITP, READ-MEMP-RAM1-ASL, QUOTIENT-TIMES, ADD-0, HEAD-READ-RN, FIX-BIT-BITP, READ-WRITE-RN, HEAD-LEMMA, MC-PC-RANGEP, STEPN-REWRITER0, STEPN-REWRITER, LESSP-OF-1, ADD-INT, ADD1-INT-RANGEP, IPLUS-COMMUTATIVITY, PLUS-ADD1, READ-MEM-ILST-ASL, READ-MEM-NAT-RANGEP, DISJOINT-10, RAM-ADDRP-LA2, INDEX-N-X-X, PLUS-0, PLUS-COMMUTATIVITY, RAM-ADDRP-3, ROM-ADDRP-LA2, and INDEX-N-DEDUCTION2, and opening up the functions NEG, PLUS, ZEROP, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, TST-SUBGROUP, MOVE-CVZNX, B0, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, MOVE-INS, MOVE-ADDR-MODEP, EXP, NUMBERP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, MAPPING, D-MAPPING, MOVE-EFFECT, MOVE-MAPPING, D_MODE, MOVE-GROUP, MOVE-N, MOVE-Z, MOVEQ-INS, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, ADD-EFFECT, ADD-CVZNX, ADD-MAPPING, SCC-GROUP, IPLUS, NAT-TO-INT, NAT-RANGEP, TIMES, MJRTY-CODE, MJRTY-S0P, LINKED-RTS-ADDR, LINKED-A6, MOVEM-SAVED, and AND, to: T. Q.E.D. [ 0.0 0.7 0.1 ] MJRTY-S0-S0-1 (PROVE-LEMMA ADD1-INT-RANGEPXX (REWRITE) (IMPLIES (AND (LEQ I R) (LESSP R N) (INT-RANGEP N 32)) (INT-RANGEP (ADD1 I) 32)) ((ENABLE INT-RANGEP NAT-TO-INT))) WARNING: Note that ADD1-INT-RANGEPXX contains the free variables N and R which will be chosen by instantiating the hypotheses (NOT (LESSP R I)) and (LESSP R N). This simplifies, rewriting with SUB1-ADD1, and expanding the functions EXP, SUB1, NUMBERP, EQUAL, INT-RANGEP, and LESSP, to four new goals: Case 4. (IMPLIES (AND (NOT (LESSP R I)) (LESSP R N) (NOT (NEGATIVEP N)) (LESSP N 2147483648) (NOT (NUMBERP I))) (LESSP 0 2147483647)), which again simplifies, using linear arithmetic, to: T. Case 3. (IMPLIES (AND (NOT (LESSP R I)) (LESSP R N) (NOT (NEGATIVEP N)) (LESSP N 2147483648) (NUMBERP I)) (LESSP I 2147483647)), which again simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (NOT (LESSP R I)) (LESSP R N) (NEGATIVEP N) (NOT (LESSP 2147483648 (NEGATIVE-GUTS N))) (NOT (NUMBERP I))) (LESSP 0 2147483647)), which again simplifies, using linear arithmetic, to: T. Case 1. (IMPLIES (AND (NOT (LESSP R I)) (LESSP R N) (NEGATIVEP N) (NOT (LESSP 2147483648 (NEGATIVE-GUTS N))) (NUMBERP I)) (LESSP I 2147483647)), which again simplifies, expanding LESSP, to: T. Q.E.D. [ 0.0 0.0 0.0 ] ADD1-INT-RANGEPXX (PROVE-LEMMA MJRTY-S0-S0-2 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (LESSP I N) (NOT (ZEROP K)) (EQUAL CAND (GET-NTH I LST))) (AND (MJRTY-S0P (STEPN S 9) A N LST CAND (ADD1 I) (ADD1 K)) (EQUAL (LINKED-RTS-ADDR (STEPN S 9)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 9)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 9))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 9) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 9)) L) (READ-MEM X (MC-MEM S) L)))) ((DISABLE TIMES LESSP))) WARNING: Note that the rewrite rule MJRTY-S0-S0-2 will be stored so as to apply only to terms with the nonrecursive function symbol MJRTY-S0P. WARNING: Note that the rewrite rule MJRTY-S0-S0-2 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-RTS-ADDR. WARNING: Note that MJRTY-S0-S0-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S0-2 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-A6. WARNING: Note that MJRTY-S0-S0-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-S0-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S0-2 will be stored so as to apply only to terms with the nonrecursive function symbol MOVEM-SAVED. WARNING: Note that MJRTY-S0-S0-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-S0-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the proposed lemma MJRTY-S0-S0-2 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and six replacement rules. This formula can be simplified, using the abbreviations ZEROP, NOT, READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (LESSP I N) (NOT (EQUAL K 0)) (EQUAL CAND (GET-NTH I LST))) (AND (MJRTY-S0P (STEPN S 9) A N LST CAND (ADD1 I) (ADD1 K)) (EQUAL (LINKED-RTS-ADDR (STEPN S 9)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 9)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 9))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 9) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 9)) L) (READ-MEM X (MC-MEM S) L)))), which simplifies, using linear arithmetic, rewriting with SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, MOVE-BEQ-INT-0, MOVE-Z-BITP, READ-MEMP-RAM1-ASL, QUOTIENT-TIMES, ADD-0, HEAD-READ-RN, FIX-BIT-BITP, SUB-BEQ-INT-1, READ-MEM-NAT-RANGEP, READ-MEM-ILST-ASL, READ-WRITE-RN, HEAD-LEMMA, MC-PC-RANGEP, STEPN-REWRITER0, STEPN-REWRITER, ADD1-INT-RANGEPXX, NAT-TO-INT-RANGEP, ADD-INT, ADD1-INT-RANGEP, IPLUS-COMMUTATIVITY, PLUS-ADD1, DISJOINT-10, RAM-ADDRP-LA2, INDEX-N-X-X, PLUS-0, PLUS-COMMUTATIVITY, RAM-ADDRP-3, ROM-ADDRP-LA2, and INDEX-N-DEDUCTION2, and opening up the functions NEG, PLUS, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, TST-SUBGROUP, MOVE-CVZNX, B0, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, EXP, NUMBERP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, TIMES, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, MAPPING, D-MAPPING, ADD-EFFECT, ADD-CVZNX, ADD-MAPPING, SCC-GROUP, IPLUS, NAT-TO-INT, NAT-RANGEP, MJRTY-CODE, MJRTY-S0P, LINKED-RTS-ADDR, LINKED-A6, MOVEM-SAVED, and AND, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) 130) (MCODE-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 32) (RAM-ADDRP (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (MEM-ILST 4 (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) LST) (DISJOINT (READ-RN 32 8 (MC-RFILE S)) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) 32) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) 0)) (NUMBERP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32) 0)) (EQUAL (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32) (GET-NTH (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) LST))) (NOT (LESSP (ADD1 (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (ADD1 (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))))), which again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.0 1.0 0.1 ] MJRTY-S0-S0-2 (PROVE-LEMMA MJRTY-S0-S0-3 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (LESSP I N) (NOT (ZEROP K)) (NOT (EQUAL CAND (GET-NTH I LST)))) (AND (MJRTY-S0P (STEPN S 8) A N LST CAND (ADD1 I) (SUB1 K)) (EQUAL (LINKED-RTS-ADDR (STEPN S 8)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 8)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 8))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 8) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 8)) L) (READ-MEM X (MC-MEM S) L)))) ((DISABLE TIMES LESSP))) WARNING: Note that the rewrite rule MJRTY-S0-S0-3 will be stored so as to apply only to terms with the nonrecursive function symbol MJRTY-S0P. WARNING: Note that the rewrite rule MJRTY-S0-S0-3 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-RTS-ADDR. WARNING: Note that MJRTY-S0-S0-3 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S0-3 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-A6. WARNING: Note that MJRTY-S0-S0-3 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-S0-3 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S0-3 will be stored so as to apply only to terms with the nonrecursive function symbol MOVEM-SAVED. WARNING: Note that MJRTY-S0-S0-3 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-S0-3 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the proposed lemma MJRTY-S0-S0-3 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and six replacement rules. This formula can be simplified, using the abbreviations ZEROP, NOT, READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (LESSP I N) (NOT (EQUAL K 0)) (NOT (EQUAL CAND (GET-NTH I LST)))) (AND (MJRTY-S0P (STEPN S 8) A N LST CAND (ADD1 I) (SUB1 K)) (EQUAL (LINKED-RTS-ADDR (STEPN S 8)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 8)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 8))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 8) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 8)) L) (READ-MEM X (MC-MEM S) L)))), which simplifies, using linear arithmetic, rewriting with SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, MOVE-BEQ-INT-0, MOVE-Z-BITP, READ-MEMP-RAM1-ASL, QUOTIENT-TIMES, ADD-0, HEAD-READ-RN, FIX-BIT-BITP, SUB-BEQ-INT-0, READ-MEM-NAT-RANGEP, READ-MEM-ILST-ASL, READ-WRITE-RN, HEAD-LEMMA, MC-PC-RANGEP, STEPN-REWRITER0, STEPN-REWRITER, SUB1-INT-RANGEP, NAT-TO-INT-RANGEP, LESSP-OF-1, DIFFERENCE-SUB1, ADD-INT, ADD1-INT-RANGEP, IPLUS-COMMUTATIVITY, PLUS-ADD1, DISJOINT-10, RAM-ADDRP-LA2, INDEX-N-X-X, PLUS-0, PLUS-COMMUTATIVITY, RAM-ADDRP-3, ROM-ADDRP-LA2, and INDEX-N-DEDUCTION2, and unfolding the definitions of NEG, PLUS, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, TST-SUBGROUP, MOVE-CVZNX, B0, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, EXP, NUMBERP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, TIMES, SUBQ-INS, SUBQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, MAPPING, D-MAPPING, SUB-EFFECT, SUB-CVZNX, SUB-MAPPING, SCC-GROUP, ADDQ-INS, ADDQ-ADDR-MODEP, ADD-EFFECT, ADD-CVZNX, ADD-MAPPING, NEGATIVE-GUTS, IPLUS, NAT-TO-INT, NAT-RANGEP, MJRTY-CODE, MJRTY-S0P, LINKED-RTS-ADDR, LINKED-A6, MOVEM-SAVED, and AND, to the new conjecture: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) 130) (MCODE-ADDRP (ADD 32 (MC-PC S) 4294967246) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 32) (RAM-ADDRP (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (MEM-ILST 4 (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) LST) (DISJOINT (READ-RN 32 8 (MC-RFILE S)) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) 32) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) 0)) (NUMBERP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32) 0)) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32) (GET-NTH (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) LST)))) (NOT (LESSP (ADD1 (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (SUB1 (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))))), which again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.1 1.0 0.0 ] MJRTY-S0-S0-3 (PROVE-LEMMA MJRTY-S0-S0-RFILE-1 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (LESSP I N) (ZEROP K) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 8))) (READ-RN OPLEN RN (MC-RFILE S)))) ((DISABLE TIMES LESSP))) WARNING: Note that MJRTY-S0-S0-RFILE-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). This formula can be simplified, using the abbreviations D2-7A2-5P, D4-7A2-5P, D6-7A2-5P, READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (LESSP I N) (ZEROP K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 8))) (READ-RN OPLEN RN (MC-RFILE S)))), which simplifies, using linear arithmetic, rewriting with the lemmas SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, MOVE-BEQ-INT-1, MOVE-Z-BITP, READ-MEMP-RAM1-ASL, QUOTIENT-TIMES, ADD-0, HEAD-READ-RN, FIX-BIT-BITP, READ-WRITE-RN, HEAD-LEMMA, MC-PC-RANGEP, STEPN-REWRITER0, and STEPN-REWRITER, and expanding the functions NEG, PLUS, ZEROP, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, TST-SUBGROUP, MOVE-CVZNX, B0, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, MOVE-INS, MOVE-ADDR-MODEP, EXP, NUMBERP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, MAPPING, D-MAPPING, MOVE-EFFECT, MOVE-MAPPING, D_MODE, MOVE-GROUP, MOVE-N, MOVE-Z, MOVEQ-INS, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, ADD-EFFECT, ADD-CVZNX, ADD-MAPPING, and SCC-GROUP, to: T. Q.E.D. [ 0.0 0.1 0.0 ] MJRTY-S0-S0-RFILE-1 (PROVE-LEMMA MJRTY-S0-S0-RFILE-2 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (LESSP I N) (NOT (ZEROP K)) (EQUAL CAND (GET-NTH I LST)) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 9))) (READ-RN OPLEN RN (MC-RFILE S)))) ((DISABLE TIMES LESSP))) WARNING: Note that MJRTY-S0-S0-RFILE-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). This conjecture can be simplified, using the abbreviations D2-7A2-5P, D4-7A2-5P, D6-7A2-5P, ZEROP, NOT, READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (LESSP I N) (NOT (EQUAL K 0)) (EQUAL CAND (GET-NTH I LST)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 9))) (READ-RN OPLEN RN (MC-RFILE S)))). This simplifies, using linear arithmetic, applying SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, MOVE-BEQ-INT-0, MOVE-Z-BITP, READ-MEMP-RAM1-ASL, QUOTIENT-TIMES, ADD-0, HEAD-READ-RN, FIX-BIT-BITP, SUB-BEQ-INT-1, READ-MEM-NAT-RANGEP, READ-MEM-ILST-ASL, READ-WRITE-RN, HEAD-LEMMA, MC-PC-RANGEP, STEPN-REWRITER0, and STEPN-REWRITER, and unfolding NEG, PLUS, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, TST-SUBGROUP, MOVE-CVZNX, B0, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, EXP, NUMBERP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, TIMES, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, MAPPING, D-MAPPING, ADD-EFFECT, ADD-CVZNX, ADD-MAPPING, and SCC-GROUP, to: T. Q.E.D. [ 0.0 0.3 0.1 ] MJRTY-S0-S0-RFILE-2 (PROVE-LEMMA MJRTY-S0-S0-RFILE-3 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (LESSP I N) (NOT (ZEROP K)) (NOT (EQUAL CAND (GET-NTH I LST))) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 8))) (READ-RN OPLEN RN (MC-RFILE S)))) ((DISABLE TIMES LESSP))) WARNING: Note that MJRTY-S0-S0-RFILE-3 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). This conjecture can be simplified, using the abbreviations D2-7A2-5P, D4-7A2-5P, D6-7A2-5P, ZEROP, NOT, READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (LESSP I N) (NOT (EQUAL K 0)) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 8))) (READ-RN OPLEN RN (MC-RFILE S)))). This simplifies, using linear arithmetic, applying SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, MOVE-BEQ-INT-0, MOVE-Z-BITP, READ-MEMP-RAM1-ASL, QUOTIENT-TIMES, ADD-0, HEAD-READ-RN, FIX-BIT-BITP, SUB-BEQ-INT-0, READ-MEM-NAT-RANGEP, READ-MEM-ILST-ASL, READ-WRITE-RN, HEAD-LEMMA, MC-PC-RANGEP, STEPN-REWRITER0, and STEPN-REWRITER, and unfolding the functions NEG, PLUS, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, TST-SUBGROUP, MOVE-CVZNX, B0, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, EXP, NUMBERP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, TIMES, SUBQ-INS, SUBQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, MAPPING, D-MAPPING, SUB-EFFECT, SUB-CVZNX, SUB-MAPPING, SCC-GROUP, ADDQ-INS, ADDQ-ADDR-MODEP, ADD-EFFECT, ADD-CVZNX, and ADD-MAPPING, to: T. Q.E.D. [ 0.0 0.1 0.0 ] MJRTY-S0-S0-RFILE-3 (PROVE-LEMMA MJRTY-S0-SN (REWRITE) (LET ((SN (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (OR (ZEROP (MJRTY-K N LST CAND I K)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K)))) (AND (EQUAL (MC-STATUS SN) 'RUNNING) (EQUAL (MC-PC SN) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 SN) (MJRTY-CAND N LST CAND I K)) (EQUAL (IREAD-DN 32 1 SN) (IF (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K)) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE SN)) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE SN)) (ADD 32 (READ-AN 32 6 S) 8)) (EQUAL (READ-MEM X (MC-MEM SN) L) (READ-MEM X (MC-MEM S) L))))) ((INDUCT (MJRTY-CAND-INDUCT S N LST CAND I K)) (DISABLE MJRTY-S0P LINKED-RTS-ADDR RTS-ADDR LINKED-A6 IREAD-DN))) WARNING: Note that the rewrite rule MJRTY-S0-SN will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that the rewrite rule MJRTY-S0-SN will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that the proposed lemma MJRTY-S0-SN is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and seven replacement rules. This formula can be simplified, using the abbreviations ZEROP, IMPLIES, NOT, OR, AND, and READ-AN, to the following four new goals: Case 4. (IMPLIES (AND (LESSP I N) (ZEROP K) (IMPLIES (AND (MJRTY-S0P (STEPN S 8) A N LST (GET-NTH I LST) (ADD1 I) 1) (OR (ZEROP (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1)))) (AND (EQUAL (MC-STATUS (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))) 'RUNNING) (EQUAL (MC-PC (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (LINKED-RTS-ADDR (STEPN S 8))) (EQUAL (IREAD-DN 32 0 (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (MJRTY-CAND N LST (GET-NTH I LST) (ADD1 I) 1)) (EQUAL (IREAD-DN 32 1 (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (IF (LESSP (QUOTIENT N 2) (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1)) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (LINKED-A6 (STEPN S 8))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE (STEPN S 8))) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))) L) (READ-MEM X (MC-MEM (STEPN S 8)) L)))) (MJRTY-S0P S A N LST CAND I K) (OR (ZEROP (MJRTY-K N LST CAND I K)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K)))) (AND (EQUAL (MC-STATUS (STEPN S (MJRTY-SN-T A N LST CAND I K))) 'RUNNING) (EQUAL (MC-PC (STEPN S (MJRTY-SN-T A N LST CAND I K))) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S (MJRTY-SN-T A N LST CAND I K))) (MJRTY-CAND N LST CAND I K)) (EQUAL (IREAD-DN 32 1 (STEPN S (MJRTY-SN-T A N LST CAND I K))) (IF (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K)) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE S)) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (MJRTY-SN-T A N LST CAND I K))) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, rewriting with MJRTY-S0-S0-1, QUOTIENT-TIMES-LESSP, and STEPN-LEMMA, and expanding the functions ZEROP, EQUAL, NUMBERP, OR, AND, PLUS, IMPLIES, MJRTY-K, MJRTY-SN-T, MJRTY-CAND, TIMES, and LESSP, to: T. Case 3. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL CAND (GET-NTH I LST)) (IMPLIES (AND (MJRTY-S0P (STEPN S 9) A N LST CAND (ADD1 I) (ADD1 K)) (OR (ZEROP (MJRTY-K N LST CAND (ADD1 I) (ADD1 K))) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND (ADD1 I) (ADD1 K))))) (AND (EQUAL (MC-STATUS (STEPN (STEPN S 9) (MJRTY-SN-T A N LST CAND (ADD1 I) (ADD1 K)))) 'RUNNING) (EQUAL (MC-PC (STEPN (STEPN S 9) (MJRTY-SN-T A N LST CAND (ADD1 I) (ADD1 K)))) (LINKED-RTS-ADDR (STEPN S 9))) (EQUAL (IREAD-DN 32 0 (STEPN (STEPN S 9) (MJRTY-SN-T A N LST CAND (ADD1 I) (ADD1 K)))) (MJRTY-CAND N LST CAND (ADD1 I) (ADD1 K))) (EQUAL (IREAD-DN 32 1 (STEPN (STEPN S 9) (MJRTY-SN-T A N LST CAND (ADD1 I) (ADD1 K)))) (IF (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND (ADD1 I) (ADD1 K))) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST CAND (ADD1 I) (ADD1 K))))) (LINKED-A6 (STEPN S 9))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST CAND (ADD1 I) (ADD1 K))))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE (STEPN S 9))) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 9) (MJRTY-SN-T A N LST CAND (ADD1 I) (ADD1 K)))) L) (READ-MEM X (MC-MEM (STEPN S 9)) L)))) (MJRTY-S0P S A N LST CAND I K) (OR (ZEROP (MJRTY-K N LST CAND I K)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K)))) (AND (EQUAL (MC-STATUS (STEPN S (MJRTY-SN-T A N LST CAND I K))) 'RUNNING) (EQUAL (MC-PC (STEPN S (MJRTY-SN-T A N LST CAND I K))) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S (MJRTY-SN-T A N LST CAND I K))) (MJRTY-CAND N LST CAND I K)) (EQUAL (IREAD-DN 32 1 (STEPN S (MJRTY-SN-T A N LST CAND I K))) (IF (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K)) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE S)) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (MJRTY-SN-T A N LST CAND I K))) L) (READ-MEM X (MC-MEM S) L)))), which simplifies, applying MJRTY-S0-S0-2, QUOTIENT-TIMES-LESSP, and STEPN-LEMMA, and unfolding the definitions of ZEROP, EQUAL, NUMBERP, OR, AND, PLUS, IMPLIES, MJRTY-K, MJRTY-SN-T, MJRTY-CAND, TIMES, and LESSP, to: T. Case 2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (IMPLIES (AND (MJRTY-S0P (STEPN S 8) A N LST CAND (ADD1 I) (SUB1 K)) (OR (ZEROP (MJRTY-K N LST CAND (ADD1 I) (SUB1 K))) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND (ADD1 I) (SUB1 K))))) (AND (EQUAL (MC-STATUS (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K)))) 'RUNNING) (EQUAL (MC-PC (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K)))) (LINKED-RTS-ADDR (STEPN S 8))) (EQUAL (IREAD-DN 32 0 (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K)))) (MJRTY-CAND N LST CAND (ADD1 I) (SUB1 K))) (EQUAL (IREAD-DN 32 1 (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K)))) (IF (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND (ADD1 I) (SUB1 K))) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (LINKED-A6 (STEPN S 8))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE (STEPN S 8))) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K)))) L) (READ-MEM X (MC-MEM (STEPN S 8)) L)))) (MJRTY-S0P S A N LST CAND I K) (OR (ZEROP (MJRTY-K N LST CAND I K)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K)))) (AND (EQUAL (MC-STATUS (STEPN S (MJRTY-SN-T A N LST CAND I K))) 'RUNNING) (EQUAL (MC-PC (STEPN S (MJRTY-SN-T A N LST CAND I K))) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S (MJRTY-SN-T A N LST CAND I K))) (MJRTY-CAND N LST CAND I K)) (EQUAL (IREAD-DN 32 1 (STEPN S (MJRTY-SN-T A N LST CAND I K))) (IF (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K)) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE S)) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (MJRTY-SN-T A N LST CAND I K))) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, rewriting with MJRTY-S0-S0-3, QUOTIENT-TIMES-LESSP, and STEPN-LEMMA, and unfolding the functions ZEROP, EQUAL, NUMBERP, OR, AND, PLUS, IMPLIES, MJRTY-K, MJRTY-SN-T, MJRTY-CAND, TIMES, and LESSP, to: T. Case 1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (OR (ZEROP (MJRTY-K N LST CAND I K)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K)))) (AND (EQUAL (MC-STATUS (STEPN S (MJRTY-SN-T A N LST CAND I K))) 'RUNNING) (EQUAL (MC-PC (STEPN S (MJRTY-SN-T A N LST CAND I K))) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S (MJRTY-SN-T A N LST CAND I K))) (MJRTY-CAND N LST CAND I K)) (EQUAL (IREAD-DN 32 1 (STEPN S (MJRTY-SN-T A N LST CAND I K))) (IF (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K)) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE S)) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (MJRTY-SN-T A N LST CAND I K))) L) (READ-MEM X (MC-MEM S) L)))), which simplifies, applying QUOTIENT-TIMES-LESSP, MJRTY-S0-SN-BASE-1, and TIMES-ZERO, and expanding MJRTY-K, ZEROP, EQUAL, NUMBERP, OR, MJRTY-SN-T, MJRTY-CAND, TIMES, LESSP, PLUS, READ-AN, and AND, to the following 21 new conjectures: Case 1.21. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (MC-STATUS (STEPN S 17)) 'RUNNING)). However this again simplifies, using linear arithmetic, appealing to the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-SN-BASE-2, and expanding the functions NUMBERP and EQUAL, to: T. Case 1.20. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (EQUAL K 0)) (EQUAL (MC-STATUS (STEPN S 11)) 'RUNNING)), which again simplifies, unfolding TIMES, EQUAL, and LESSP, to: T. Case 1.19. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (NUMBERP K))) (EQUAL (MC-STATUS (STEPN S 11)) 'RUNNING)), which again simplifies, rewriting with the lemma TIMES-ZERO, and unfolding OR, ZEROP, EQUAL, and LESSP, to: T. Case 1.18. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (MC-PC (STEPN S 17)) (LINKED-RTS-ADDR S))), which again simplifies, using linear arithmetic, rewriting with the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-SN-BASE-2, and opening up NUMBERP and EQUAL, to: T. Case 1.17. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (EQUAL K 0)) (EQUAL (MC-PC (STEPN S 11)) (LINKED-RTS-ADDR S))), which again simplifies, opening up the functions TIMES, EQUAL, and LESSP, to: T. Case 1.16. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (NUMBERP K))) (EQUAL (MC-PC (STEPN S 11)) (LINKED-RTS-ADDR S))), which again simplifies, rewriting with TIMES-ZERO, and opening up the functions OR, ZEROP, EQUAL, and LESSP, to: T. Case 1.15. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (IREAD-DN 32 0 (STEPN S 17)) CAND)). However this again simplifies, using linear arithmetic, applying the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-SN-BASE-2, and unfolding NUMBERP and EQUAL, to: T. Case 1.14. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (EQUAL K 0)) (EQUAL (IREAD-DN 32 0 (STEPN S 11)) CAND)), which again simplifies, opening up TIMES, EQUAL, and LESSP, to: T. Case 1.13. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (NUMBERP K))) (EQUAL (IREAD-DN 32 0 (STEPN S 11)) CAND)), which again simplifies, rewriting with TIMES-ZERO, and expanding the functions OR, ZEROP, EQUAL, and LESSP, to: T. Case 1.12. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (IREAD-DN 32 1 (STEPN S 17)) 1)). However this again simplifies, using linear arithmetic, applying QUOTIENT-TIMES-LESSP and MJRTY-S0-SN-BASE-2, and expanding the functions NUMBERP and EQUAL, to: T. Case 1.11. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (EQUAL K 0)) (EQUAL (IREAD-DN 32 1 (STEPN S 11)) 1)). But this again simplifies, opening up the definitions of TIMES, EQUAL, and LESSP, to: T. Case 1.10. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (NUMBERP K))) (EQUAL (IREAD-DN 32 1 (STEPN S 11)) 1)), which again simplifies, rewriting with TIMES-ZERO, and opening up the functions OR, ZEROP, EQUAL, and LESSP, to: T. Case 1.9. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 17))) (LINKED-A6 S))). But this again simplifies, using linear arithmetic, rewriting with the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-SN-BASE-2, and opening up the functions NUMBERP and EQUAL, to: T. Case 1.8. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (EQUAL K 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 11))) (LINKED-A6 S))), which again simplifies, expanding TIMES, EQUAL, and LESSP, to: T. Case 1.7. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (NUMBERP K))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 11))) (LINKED-A6 S))), which again simplifies, appealing to the lemma TIMES-ZERO, and expanding the functions OR, ZEROP, EQUAL, and LESSP, to: T. Case 1.6. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 17))) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 8))), which again simplifies, using linear arithmetic, applying the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-SN-BASE-2, and unfolding NUMBERP, EQUAL, PLUS, and READ-AN, to: T. Case 1.5. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (EQUAL K 0)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 11))) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 8))), which again simplifies, opening up the functions TIMES, EQUAL, and LESSP, to: T. Case 1.4. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (NUMBERP K))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 11))) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 8))), which again simplifies, applying the lemma TIMES-ZERO, and opening up OR, ZEROP, EQUAL, and LESSP, to: T. Case 1.3. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 17)) L) (READ-MEM X (MC-MEM S) L))), which again simplifies, using linear arithmetic, appealing to the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-SN-BASE-2, and unfolding the definitions of NUMBERP and EQUAL, to: T. Case 1.2. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (EQUAL K 0)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 11)) L) (READ-MEM X (MC-MEM S) L))), which again simplifies, opening up TIMES, EQUAL, and LESSP, to: T. Case 1.1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (NUMBERP K))) (EQUAL (READ-MEM X (MC-MEM (STEPN S 11)) L) (READ-MEM X (MC-MEM S) L))), which again simplifies, rewriting with TIMES-ZERO, and unfolding OR, ZEROP, EQUAL, and LESSP, to: T. Q.E.D. [ 0.0 0.9 0.1 ] MJRTY-S0-SN (PROVE-LEMMA MJRTY-S0-SN-RFILE (REWRITE) (LET ((SN (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (OR (ZEROP (MJRTY-K N LST CAND I K)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (D2-7A2-5P RN) (LEQ OPLEN 32)) (EQUAL (READ-RN OPLEN RN (MC-RFILE SN)) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4)))))) ((INDUCT (MJRTY-CAND-INDUCT S N LST CAND I K)) (DISABLE MJRTY-S0P))) This formula can be simplified, using the abbreviations ZEROP, D2-7A2-5P, IMPLIES, NOT, OR, and AND, to the following four new formulas: Case 4. (IMPLIES (AND (LESSP I N) (ZEROP K) (IMPLIES (AND (MJRTY-S0P (STEPN S 8) A N LST (GET-NTH I LST) (ADD1 I) 1) (OR (ZEROP (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (D2-7A2-5P RN) (IF (LESSP 32 OPLEN) F T)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE (STEPN S 8))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED (STEPN S 8) 4 16 4))))) (MJRTY-S0P S A N LST CAND I K) (OR (ZEROP (MJRTY-K N LST CAND I K)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))). This simplifies, applying MJRTY-S0-S0-1, QUOTIENT-TIMES-LESSP, SUB-NEG, STEPN-LEMMA, and MJRTY-S0-S0-RFILE-1, and opening up ZEROP, EQUAL, NUMBERP, OR, D2-7A2-5P, AND, D4-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, MOVEM-SAVED, IMPLIES, MJRTY-K, and MJRTY-SN-T, to 16 new formulas: Case 4.16. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (EQUAL RN 2) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I 0) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 2 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 2 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, clearly, to: T. Case 4.15. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (EQUAL RN 2) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I 0) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 2 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 2 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 4.14. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (EQUAL RN 4) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I 0) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 4 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 4 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 4.13. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (EQUAL RN 4) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I 0) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 4 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 4 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 4.12. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (EQUAL RN 5) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I 0) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 5 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 5 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 4.11. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (EQUAL RN 5) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I 0) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 5 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 5 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 4.10. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (EQUAL RN 3) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I 0) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 3 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 3 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 4.9. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (EQUAL RN 3) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I 0) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 3 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 3 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 4.8. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (EQUAL RN 2) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 2 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 2 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 4.7. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (EQUAL RN 2) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 2 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 2 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, obviously, to: T. Case 4.6. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (EQUAL RN 4) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 4 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 4 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, obviously, to: T. Case 4.5. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (EQUAL RN 4) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 4 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 4 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 4.4. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (EQUAL RN 5) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 5 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 5 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, obviously, to: T. Case 4.3. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (EQUAL RN 5) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 5 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 5 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 4.2. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (EQUAL RN 3) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 3 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 3 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 4.1. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (EQUAL RN 3) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 3 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (GET-VLST OPLEN 0 3 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 3. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL CAND (GET-NTH I LST)) (IMPLIES (AND (MJRTY-S0P (STEPN S 9) A N LST CAND (ADD1 I) (ADD1 K)) (OR (ZEROP (MJRTY-K N LST CAND (ADD1 I) (ADD1 K))) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND (ADD1 I) (ADD1 K)))) (D2-7A2-5P RN) (IF (LESSP 32 OPLEN) F T)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST CAND (ADD1 I) (ADD1 K))))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE (STEPN S 9))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED (STEPN S 9) 4 16 4))))) (MJRTY-S0P S A N LST CAND I K) (OR (ZEROP (MJRTY-K N LST CAND I K)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))). This simplifies, applying MJRTY-S0-S0-2, QUOTIENT-TIMES-LESSP, SUB-NEG, STEPN-LEMMA, and MJRTY-S0-S0-RFILE-2, and opening up the functions ZEROP, EQUAL, NUMBERP, OR, D2-7A2-5P, AND, D4-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, MOVEM-SAVED, IMPLIES, MJRTY-K, and MJRTY-SN-T, to eight new formulas: Case 3.8. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL RN 2) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST (GET-NTH I LST) I K) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 2 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 2 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, trivially, to: T. Case 3.7. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL RN 2) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST (GET-NTH I LST) I K) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 2 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 2 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 3.6. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL RN 4) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST (GET-NTH I LST) I K) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 4 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 4 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 3.5. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL RN 4) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST (GET-NTH I LST) I K) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 4 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 4 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 3.4. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL RN 5) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST (GET-NTH I LST) I K) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 5 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 5 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 3.3. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL RN 5) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST (GET-NTH I LST) I K) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 5 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 5 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 3.2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL RN 3) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST (GET-NTH I LST) I K) (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 3 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 3 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 3.1. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL RN 3) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST (GET-NTH I LST) I K) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 3 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 3 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, obviously, to: T. Case 2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (IMPLIES (AND (MJRTY-S0P (STEPN S 8) A N LST CAND (ADD1 I) (SUB1 K)) (OR (ZEROP (MJRTY-K N LST CAND (ADD1 I) (SUB1 K))) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)))) (D2-7A2-5P RN) (IF (LESSP 32 OPLEN) F T)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE (STEPN S 8))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED (STEPN S 8) 4 16 4))))) (MJRTY-S0P S A N LST CAND I K) (OR (ZEROP (MJRTY-K N LST CAND I K)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))). This simplifies, appealing to the lemmas MJRTY-S0-S0-3, QUOTIENT-TIMES-LESSP, SUB-NEG, STEPN-LEMMA, and MJRTY-S0-S0-RFILE-3, and opening up the functions ZEROP, EQUAL, NUMBERP, OR, D2-7A2-5P, AND, D4-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, MOVEM-SAVED, IMPLIES, MJRTY-K, and MJRTY-SN-T, to the following eight new goals: Case 2.8. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 2) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (EQUAL (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 2 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 2 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 2.7. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 2) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 2 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 2 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, obviously, to: T. Case 2.6. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 4) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (EQUAL (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 4 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 4 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 2.5. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 4) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 4 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 4 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 2.4. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 5) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (EQUAL (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 5 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 5 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, obviously, to: T. Case 2.3. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 5) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 5 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 5 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, obviously, to: T. Case 2.2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 3) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (EQUAL (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)) 0) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 3 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 3 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 2.1. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 3) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)))) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 3 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (GET-VLST OPLEN 0 3 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (OR (ZEROP (MJRTY-K N LST CAND I K)) (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (MJRTY-SN-T A N LST CAND I K)))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))). This simplifies, applying QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S0-SN-RFILE-BASE-1, and expanding MJRTY-K, ZEROP, EQUAL, NUMBERP, OR, MJRTY-SN-T, D2-7A2-5P, D4-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to 15 new formulas: Case 1.15. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 2) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 17))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S0-SN-RFILE-BASE-2, and unfolding EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.14. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 4) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 17))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S0-SN-RFILE-BASE-2, and expanding EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.13. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 5) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 17))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, using linear arithmetic, rewriting with the lemmas QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S0-SN-RFILE-BASE-2, and expanding the functions EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.12. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 3) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 17))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, using linear arithmetic, applying the lemmas QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S0-SN-RFILE-BASE-2, and expanding EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.11. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 3) (NOT (NUMBERP K))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, appealing to the lemma TIMES-ZERO, and unfolding OR, ZEROP, EQUAL, and LESSP, to: T. Case 1.10. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 3) (EQUAL K 0)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, opening up the functions TIMES, EQUAL, and LESSP, to: T. Case 1.9. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 5) (NOT (NUMBERP K))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, applying TIMES-ZERO, and unfolding the functions OR, ZEROP, EQUAL, and LESSP, to: T. Case 1.8. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 5) (EQUAL K 0)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). But this again simplifies, expanding the definitions of TIMES, EQUAL, and LESSP, to: T. Case 1.7. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 4) (NOT (NUMBERP K))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, applying the lemma TIMES-ZERO, and opening up the functions OR, ZEROP, EQUAL, and LESSP, to: T. Case 1.6. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 4) (EQUAL K 0)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, unfolding the functions TIMES, EQUAL, and LESSP, to: T. Case 1.5. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 2) (NOT (NUMBERP K))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, applying TIMES-ZERO, and opening up the definitions of OR, ZEROP, EQUAL, and LESSP, to: T. Case 1.4. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 2) (EQUAL K 0)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). However this again simplifies, opening up the functions TIMES, EQUAL, and LESSP, to: T. Case 1.3. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 17))) (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, using linear arithmetic, applying the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-SN-RFILE-BASE-2, and unfolding the functions D2-7A2-5P, NUMBERP, EQUAL, D4-7A2-5P, and D6-7A2-5P, to: T. Case 1.2. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (EQUAL K 0)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, unfolding the functions TIMES, EQUAL, and LESSP, to: T. Case 1.1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (LESSP N (TIMES 2 K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (NOT (NUMBERP K))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 11))) (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, rewriting with TIMES-ZERO, and opening up the functions OR, ZEROP, EQUAL, and LESSP, to: T. Q.E.D. [ 0.0 1.1 0.3 ] MJRTY-S0-SN-RFILE (PROVE-LEMMA MJRTY-S0-S1-BASE1 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (NOT (LESSP I N)) (NOT (ZEROP K)) (NOT (LESSP (QUOTIENT N 2) K)) (EQUAL CAND (GET-NTH 0 LST))) (AND (MJRTY-S1P (STEPN S 18) A N LST CAND 1 1) (EQUAL (LINKED-RTS-ADDR (STEPN S 18)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 18)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 18))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 18) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 18)) L) (READ-MEM X (MC-MEM S) L)))) ((DISABLE TIMES) (ENABLE IQUOTIENT))) WARNING: Note that the rewrite rule MJRTY-S0-S1-BASE1 will be stored so as to apply only to terms with the nonrecursive function symbol MJRTY-S1P. WARNING: Note that MJRTY-S0-S1-BASE1 contains the free variables K and I which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S1-BASE1 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-RTS-ADDR. WARNING: Note that MJRTY-S0-S1-BASE1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S1-BASE1 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-A6. WARNING: Note that MJRTY-S0-S1-BASE1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-S1-BASE1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S1-BASE1 will be stored so as to apply only to terms with the nonrecursive function symbol MOVEM-SAVED. WARNING: Note that MJRTY-S0-S1-BASE1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-S1-BASE1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the proposed lemma MJRTY-S0-S1-BASE1 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and six replacement rules. This conjecture can be simplified, using the abbreviations ZEROP, NOT, READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to the goal: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (NOT (EQUAL K 0)) (NOT (LESSP (QUOTIENT N 2) K)) (EQUAL CAND (GET-NTH 0 LST))) (AND (MJRTY-S1P (STEPN S 18) A N LST CAND 1 1) (EQUAL (LINKED-RTS-ADDR (STEPN S 18)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 18)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 18))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 18) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 18)) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, using linear arithmetic, rewriting with SUB-NEG, QUOTIENT-TIMES-LESSP, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, FIX-BIT-BITP, READ-WRITE-RN, MOVE-BEQ-INT-0, MOVE-Z-BITP, BGE-V0, MOVE-BMI, MOVE-N-BITP, WRITE-WRITE-RN, HEAD-READ-RN, HEAD-LEMMA, ASR-NAT-RANGEP, ASR-C-BITP, SUB-BGE, ASR-INT, BLE-BGT, READ-MEMP-RAM0, QUOTIENT-LESSP-LINEAR, ADD-0, SUB-BEQ-INT-1, READ-MEM-NAT-RANGEP, IREAD-MEM-GET0, STEPN-REWRITER0, STEPN-REWRITER, DISJOINT-10, RAM-ADDRP-LA2, INDEX-N-X-X, PLUS-0, PLUS-COMMUTATIVITY, RAM-ADDRP-3, ROM-ADDRP-LA2, and INDEX-N-DEDUCTION2, and expanding NEG, PLUS, EQUAL, NUMBERP, EXECUTE-INS, OPCODE-FIELD, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, TST-SUBGROUP, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, FIX-BIT, REGISTER-SHIFT-ROTATE, ASR-EFFECT, ASR-X, ASR-CVZNX, SR-CNT, I-DATA, REGISTER-ASR-INS, S&R-GROUP, IQUOTIENT, EXP, CLR-SUBGROUP, CLR-EFFECT, B1, CLR-CVZNX, CLR-ADDR-MODEP, CLR-INS, NAT-TO-INT, NAT-RANGEP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, ASL, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, TIMES, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, ADD-EFFECT, ADD-MAPPING, SCC-GROUP, MJRTY-CODE, MJRTY-S1P, LINKED-RTS-ADDR, LINKED-A6, MOVEM-SAVED, and AND, to: T. Q.E.D. [ 0.0 1.6 0.0 ] MJRTY-S0-S1-BASE1 (PROVE-LEMMA MJRTY-S0-S1-BASE2 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (NOT (LESSP I N)) (NOT (ZEROP K)) (NOT (LESSP (QUOTIENT N 2) K)) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (AND (MJRTY-S1P (STEPN S 17) A N LST CAND 1 0) (EQUAL (LINKED-RTS-ADDR (STEPN S 17)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 17)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 17))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 17) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 17)) L) (READ-MEM X (MC-MEM S) L)))) ((DISABLE TIMES) (ENABLE IQUOTIENT))) WARNING: Note that the rewrite rule MJRTY-S0-S1-BASE2 will be stored so as to apply only to terms with the nonrecursive function symbol MJRTY-S1P. WARNING: Note that MJRTY-S0-S1-BASE2 contains the free variables K and I which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S1-BASE2 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-RTS-ADDR. WARNING: Note that MJRTY-S0-S1-BASE2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S1-BASE2 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-A6. WARNING: Note that MJRTY-S0-S1-BASE2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-S1-BASE2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S0-S1-BASE2 will be stored so as to apply only to terms with the nonrecursive function symbol MOVEM-SAVED. WARNING: Note that MJRTY-S0-S1-BASE2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that MJRTY-S0-S1-BASE2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). WARNING: Note that the proposed lemma MJRTY-S0-S1-BASE2 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and six replacement rules. This conjecture can be simplified, using the abbreviations ZEROP, NOT, READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (NOT (EQUAL K 0)) (NOT (LESSP (QUOTIENT N 2) K)) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (AND (MJRTY-S1P (STEPN S 17) A N LST CAND 1 0) (EQUAL (LINKED-RTS-ADDR (STEPN S 17)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 17)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 17))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 17) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 17)) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, using linear arithmetic, rewriting with SUB-NEG, QUOTIENT-TIMES-LESSP, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, FIX-BIT-BITP, READ-WRITE-RN, MOVE-BEQ-INT-0, MOVE-Z-BITP, BGE-V0, MOVE-BMI, MOVE-N-BITP, WRITE-WRITE-RN, HEAD-READ-RN, HEAD-LEMMA, ASR-NAT-RANGEP, ASR-C-BITP, SUB-BGE, ASR-INT, BLE-BGT, READ-MEMP-RAM0, QUOTIENT-LESSP-LINEAR, ADD-0, SUB-BEQ-INT-0, READ-MEM-NAT-RANGEP, IREAD-MEM-GET0, STEPN-REWRITER0, STEPN-REWRITER, DISJOINT-10, RAM-ADDRP-LA2, INDEX-N-X-X, PLUS-0, PLUS-COMMUTATIVITY, RAM-ADDRP-3, ROM-ADDRP-LA2, and INDEX-N-DEDUCTION2, and expanding the definitions of NEG, PLUS, EQUAL, NUMBERP, EXECUTE-INS, OPCODE-FIELD, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, TST-SUBGROUP, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, FIX-BIT, REGISTER-SHIFT-ROTATE, ASR-EFFECT, ASR-X, ASR-CVZNX, SR-CNT, I-DATA, REGISTER-ASR-INS, S&R-GROUP, IQUOTIENT, EXP, CLR-SUBGROUP, CLR-EFFECT, B1, CLR-CVZNX, CLR-ADDR-MODEP, CLR-INS, NAT-TO-INT, NAT-RANGEP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, ASL, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, TIMES, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, ADD-EFFECT, ADD-MAPPING, SCC-GROUP, MJRTY-CODE, MJRTY-S1P, LINKED-RTS-ADDR, LINKED-A6, MOVEM-SAVED, and AND, to: T. Q.E.D. [ 0.0 1.6 0.0 ] MJRTY-S0-S1-BASE2 (PROVE-LEMMA MJRTY-S0-S1-RFILE-BASE1 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (NOT (LESSP I N)) (NOT (ZEROP K)) (NOT (LESSP (QUOTIENT N 2) K)) (EQUAL CAND (GET-NTH 0 LST)) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 18))) (READ-RN OPLEN RN (MC-RFILE S)))) ((DISABLE TIMES) (ENABLE IQUOTIENT))) WARNING: Note that MJRTY-S0-S1-RFILE-BASE1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). This formula can be simplified, using the abbreviations D2-7A2-5P, D4-7A2-5P, D6-7A2-5P, ZEROP, NOT, READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to the new goal: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (NOT (EQUAL K 0)) (NOT (LESSP (QUOTIENT N 2) K)) (EQUAL CAND (GET-NTH 0 LST)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 18))) (READ-RN OPLEN RN (MC-RFILE S)))), which simplifies, using linear arithmetic, applying SUB-NEG, QUOTIENT-TIMES-LESSP, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, FIX-BIT-BITP, READ-WRITE-RN, MOVE-BEQ-INT-0, MOVE-Z-BITP, BGE-V0, MOVE-BMI, MOVE-N-BITP, WRITE-WRITE-RN, HEAD-READ-RN, HEAD-LEMMA, ASR-NAT-RANGEP, ASR-C-BITP, SUB-BGE, ASR-INT, BLE-BGT, READ-MEMP-RAM0, QUOTIENT-LESSP-LINEAR, ADD-0, SUB-BEQ-INT-1, READ-MEM-NAT-RANGEP, IREAD-MEM-GET0, STEPN-REWRITER0, and STEPN-REWRITER, and expanding the functions NEG, PLUS, EQUAL, NUMBERP, EXECUTE-INS, OPCODE-FIELD, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, TST-SUBGROUP, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, FIX-BIT, REGISTER-SHIFT-ROTATE, ASR-EFFECT, ASR-X, ASR-CVZNX, SR-CNT, I-DATA, REGISTER-ASR-INS, S&R-GROUP, IQUOTIENT, EXP, CLR-SUBGROUP, CLR-EFFECT, B1, CLR-CVZNX, CLR-ADDR-MODEP, CLR-INS, NAT-TO-INT, NAT-RANGEP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, ASL, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, TIMES, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, ADD-EFFECT, ADD-MAPPING, and SCC-GROUP, to: T. Q.E.D. [ 0.0 0.4 0.1 ] MJRTY-S0-S1-RFILE-BASE1 (PROVE-LEMMA MJRTY-S0-S1-RFILE-BASE2 (REWRITE) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (NOT (LESSP I N)) (NOT (ZEROP K)) (NOT (LESSP (QUOTIENT N 2) K)) (NOT (EQUAL CAND (GET-NTH 0 LST))) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 17))) (READ-RN OPLEN RN (MC-RFILE S)))) ((ENABLE IQUOTIENT))) WARNING: Note that MJRTY-S0-S1-RFILE-BASE2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S0P S A N LST CAND I K). This formula can be simplified, using the abbreviations D2-7A2-5P, D4-7A2-5P, D6-7A2-5P, ZEROP, NOT, READ-AN, MJRTY-CODE, MJRTY-S0P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 50 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (NOT (EQUAL K 0)) (NOT (LESSP (QUOTIENT N 2) K)) (NOT (EQUAL CAND (GET-NTH 0 LST))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 17))) (READ-RN OPLEN RN (MC-RFILE S)))), which simplifies, using linear arithmetic, applying SUB-NEG, QUOTIENT-TIMES-LESSP, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, FIX-BIT-BITP, READ-WRITE-RN, MOVE-BEQ-INT-0, MOVE-Z-BITP, BGE-V0, MOVE-BMI, MOVE-N-BITP, WRITE-WRITE-RN, HEAD-READ-RN, HEAD-LEMMA, ASR-NAT-RANGEP, ASR-C-BITP, SUB-BGE, ASR-INT, BLE-BGT, READ-MEMP-RAM0, QUOTIENT-LESSP-LINEAR, ADD-0, SUB-BEQ-INT-0, READ-MEM-NAT-RANGEP, IREAD-MEM-GET0, STEPN-REWRITER0, and STEPN-REWRITER, and opening up the functions NEG, PLUS, EQUAL, NUMBERP, EXECUTE-INS, OPCODE-FIELD, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, TST-SUBGROUP, TST-ADDR-MODEP, TST-INS, MISC-GROUP, B-NOT, FIX-BIT, REGISTER-SHIFT-ROTATE, ASR-EFFECT, ASR-X, ASR-CVZNX, SR-CNT, I-DATA, REGISTER-ASR-INS, S&R-GROUP, IQUOTIENT, EXP, CLR-SUBGROUP, CLR-EFFECT, B1, CLR-CVZNX, CLR-ADDR-MODEP, CLR-INS, NAT-TO-INT, NAT-RANGEP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, ASL, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, TIMES, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, ADD-EFFECT, ADD-MAPPING, and SCC-GROUP, to: T. Q.E.D. [ 0.0 0.4 0.0 ] MJRTY-S0-S1-RFILE-BASE2 (PROVE-LEMMA MJRTY-S0-S1 (REWRITE) (LET ((S1 (STEPN S (MJRTY-CAND-T A N LST CAND I K)))) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (NOT (ZEROP (MJRTY-K N LST CAND I K))) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (EQUAL CAND0 (MJRTY-CAND N LST CAND I K)) (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND I K) (GET-NTH 0 LST)) 1 0))) (AND (MJRTY-S1P S1 A N LST CAND0 1 K0) (EQUAL (LINKED-RTS-ADDR S1) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 S1) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE S1)) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED S1 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM S1) L) (READ-MEM X (MC-MEM S) L))))) ((INDUCT (MJRTY-CAND-INDUCT S N LST CAND I K)) (DISABLE MJRTY-S0P MJRTY-S1P MOVEM-SAVED LINKED-RTS-ADDR LINKED-A6))) WARNING: Note that the rewrite rule MJRTY-S0-S1 will be stored so as to apply only to terms with the nonrecursive function symbol MJRTY-S1P. WARNING: Note that the rewrite rule MJRTY-S0-S1 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-RTS-ADDR. WARNING: Note that MJRTY-S0-S1 contains the free variables K0 and CAND0 which will be chosen by instantiating the hypotheses: (EQUAL CAND0 (MJRTY-CAND N LST CAND I K)) and (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND I K) (GET-NTH 0 LST)) 1 0)). WARNING: Note that the rewrite rule MJRTY-S0-S1 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-A6. WARNING: Note that MJRTY-S0-S1 contains the free variables K0 and CAND0 which will be chosen by instantiating the hypotheses: (EQUAL CAND0 (MJRTY-CAND N LST CAND I K)) and (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND I K) (GET-NTH 0 LST)) 1 0)). WARNING: Note that MJRTY-S0-S1 contains the free variables K0 and CAND0 which will be chosen by instantiating the hypotheses: (EQUAL CAND0 (MJRTY-CAND N LST CAND I K)) and (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND I K) (GET-NTH 0 LST)) 1 0)). WARNING: Note that the rewrite rule MJRTY-S0-S1 will be stored so as to apply only to terms with the nonrecursive function symbol MOVEM-SAVED. WARNING: Note that MJRTY-S0-S1 contains the free variables K0 and CAND0 which will be chosen by instantiating the hypotheses: (EQUAL CAND0 (MJRTY-CAND N LST CAND I K)) and (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND I K) (GET-NTH 0 LST)) 1 0)). WARNING: Note that MJRTY-S0-S1 contains the free variables K0 and CAND0 which will be chosen by instantiating the hypotheses: (EQUAL CAND0 (MJRTY-CAND N LST CAND I K)) and (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND I K) (GET-NTH 0 LST)) 1 0)). WARNING: Note that the proposed lemma MJRTY-S0-S1 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and six replacement rules. This formula can be simplified, using the abbreviations ZEROP, IMPLIES, NOT, OR, and AND, to the following four new goals: Case 4. (IMPLIES (AND (LESSP I N) (ZEROP K) (IMPLIES (AND (MJRTY-S0P (STEPN S 8) A N LST (GET-NTH I LST) (ADD1 I) 1) (NOT (ZEROP (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (EQUAL CAND0 (MJRTY-CAND N LST (GET-NTH I LST) (ADD1 I) 1)) (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST (GET-NTH I LST) (ADD1 I) 1) (GET-NTH 0 LST)) 1 0))) (AND (MJRTY-S1P (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)) A N LST CAND0 1 K0) (EQUAL (LINKED-RTS-ADDR (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (LINKED-RTS-ADDR (STEPN S 8))) (EQUAL (LINKED-A6 (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (LINKED-A6 (STEPN S 8))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (READ-RN 32 14 (MC-RFILE (STEPN S 8)))) (EQUAL (MOVEM-SAVED (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)) 4 16 4) (MOVEM-SAVED (STEPN S 8) 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) L) (READ-MEM X (MC-MEM (STEPN S 8)) L)))) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL (MJRTY-K N LST CAND I K) 0)) (NUMBERP (MJRTY-K N LST CAND I K)) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (EQUAL CAND0 (MJRTY-CAND N LST CAND I K)) (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND I K) (GET-NTH 0 LST)) 1 0))) (AND (MJRTY-S1P (STEPN S (MJRTY-CAND-T A N LST CAND I K)) A N LST CAND0 1 K0) (EQUAL (LINKED-RTS-ADDR (STEPN S (MJRTY-CAND-T A N LST CAND I K))) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S (MJRTY-CAND-T A N LST CAND I K))) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (MJRTY-CAND-T A N LST CAND I K)))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S (MJRTY-CAND-T A N LST CAND I K)) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (MJRTY-CAND-T A N LST CAND I K))) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, applying MJRTY-S0-S0-1, QUOTIENT-TIMES-LESSP, and STEPN-LEMMA, and opening up the definitions of ZEROP, NOT, EQUAL, NUMBERP, MJRTY-CAND, AND, IMPLIES, MJRTY-K, and MJRTY-CAND-T, to two new formulas: Case 4.2. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (EQUAL (MJRTY-CAND N LST (GET-NTH I LST) (ADD1 I) 1) (GET-NTH 0 LST)) (MJRTY-S1P (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)) A N LST (MJRTY-CAND N LST (GET-NTH I LST) (ADD1 I) 1) 1 1) (EQUAL (LINKED-RTS-ADDR (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) L) (READ-MEM X (MC-MEM S) L)) (MJRTY-S0P S A N LST CAND I 0) (NOT (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))))) (MJRTY-S1P (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)) A N LST (GET-NTH 0 LST) 1 1)), which again simplifies, clearly, to: T. Case 4.1. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (EQUAL (MJRTY-CAND N LST (GET-NTH I LST) (ADD1 I) 1) (GET-NTH 0 LST)) (MJRTY-S1P (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)) A N LST (MJRTY-CAND N LST (GET-NTH I LST) (ADD1 I) 1) 1 1) (EQUAL (LINKED-RTS-ADDR (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) L) (READ-MEM X (MC-MEM S) L)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))))) (MJRTY-S1P (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)) A N LST (GET-NTH 0 LST) 1 1)). This again simplifies, clearly, to: T. Case 3. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL CAND (GET-NTH I LST)) (IMPLIES (AND (MJRTY-S0P (STEPN S 9) A N LST CAND (ADD1 I) (ADD1 K)) (NOT (ZEROP (MJRTY-K N LST CAND (ADD1 I) (ADD1 K)))) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND (ADD1 I) (ADD1 K)))) (EQUAL CAND0 (MJRTY-CAND N LST CAND (ADD1 I) (ADD1 K))) (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND (ADD1 I) (ADD1 K)) (GET-NTH 0 LST)) 1 0))) (AND (MJRTY-S1P (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST CAND (ADD1 I) (ADD1 K))) A N LST CAND0 1 K0) (EQUAL (LINKED-RTS-ADDR (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST CAND (ADD1 I) (ADD1 K)))) (LINKED-RTS-ADDR (STEPN S 9))) (EQUAL (LINKED-A6 (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST CAND (ADD1 I) (ADD1 K)))) (LINKED-A6 (STEPN S 9))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST CAND (ADD1 I) (ADD1 K))))) (READ-RN 32 14 (MC-RFILE (STEPN S 9)))) (EQUAL (MOVEM-SAVED (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST CAND (ADD1 I) (ADD1 K))) 4 16 4) (MOVEM-SAVED (STEPN S 9) 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST CAND (ADD1 I) (ADD1 K)))) L) (READ-MEM X (MC-MEM (STEPN S 9)) L)))) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL (MJRTY-K N LST CAND I K) 0)) (NUMBERP (MJRTY-K N LST CAND I K)) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (EQUAL CAND0 (MJRTY-CAND N LST CAND I K)) (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND I K) (GET-NTH 0 LST)) 1 0))) (AND (MJRTY-S1P (STEPN S (MJRTY-CAND-T A N LST CAND I K)) A N LST CAND0 1 K0) (EQUAL (LINKED-RTS-ADDR (STEPN S (MJRTY-CAND-T A N LST CAND I K))) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S (MJRTY-CAND-T A N LST CAND I K))) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (MJRTY-CAND-T A N LST CAND I K)))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S (MJRTY-CAND-T A N LST CAND I K)) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (MJRTY-CAND-T A N LST CAND I K))) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, applying MJRTY-S0-S0-2, QUOTIENT-TIMES-LESSP, and STEPN-LEMMA, and opening up the functions ZEROP, NOT, EQUAL, NUMBERP, MJRTY-CAND, AND, IMPLIES, MJRTY-K, and MJRTY-CAND-T, to: (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL (MJRTY-CAND N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)) (GET-NTH 0 LST)) (MJRTY-S1P (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))) A N LST (MJRTY-CAND N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)) 1 1) (EQUAL (LINKED-RTS-ADDR (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) L) (READ-MEM X (MC-MEM S) L)) (MJRTY-S0P S A N LST (GET-NTH I LST) I K) (NOT (EQUAL (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))))) (MJRTY-S1P (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))) A N LST (GET-NTH 0 LST) 1 1)). This again simplifies, clearly, to: T. Case 2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (IMPLIES (AND (MJRTY-S0P (STEPN S 8) A N LST CAND (ADD1 I) (SUB1 K)) (NOT (ZEROP (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)))) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)))) (EQUAL CAND0 (MJRTY-CAND N LST CAND (ADD1 I) (SUB1 K))) (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND (ADD1 I) (SUB1 K)) (GET-NTH 0 LST)) 1 0))) (AND (MJRTY-S1P (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))) A N LST CAND0 1 K0) (EQUAL (LINKED-RTS-ADDR (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))) (LINKED-RTS-ADDR (STEPN S 8))) (EQUAL (LINKED-A6 (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))) (LINKED-A6 (STEPN S 8))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))))) (READ-RN 32 14 (MC-RFILE (STEPN S 8)))) (EQUAL (MOVEM-SAVED (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))) 4 16 4) (MOVEM-SAVED (STEPN S 8) 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))) L) (READ-MEM X (MC-MEM (STEPN S 8)) L)))) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL (MJRTY-K N LST CAND I K) 0)) (NUMBERP (MJRTY-K N LST CAND I K)) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (EQUAL CAND0 (MJRTY-CAND N LST CAND I K)) (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND I K) (GET-NTH 0 LST)) 1 0))) (AND (MJRTY-S1P (STEPN S (MJRTY-CAND-T A N LST CAND I K)) A N LST CAND0 1 K0) (EQUAL (LINKED-RTS-ADDR (STEPN S (MJRTY-CAND-T A N LST CAND I K))) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S (MJRTY-CAND-T A N LST CAND I K))) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (MJRTY-CAND-T A N LST CAND I K)))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S (MJRTY-CAND-T A N LST CAND I K)) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (MJRTY-CAND-T A N LST CAND I K))) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, applying MJRTY-S0-S0-3, QUOTIENT-TIMES-LESSP, and STEPN-LEMMA, and opening up the functions ZEROP, NOT, EQUAL, NUMBERP, MJRTY-CAND, AND, IMPLIES, MJRTY-K, and MJRTY-CAND-T, to: (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL (MJRTY-CAND N LST CAND (ADD1 I) (SUB1 K)) (GET-NTH 0 LST)) (MJRTY-S1P (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))) A N LST (MJRTY-CAND N LST CAND (ADD1 I) (SUB1 K)) 1 1) (EQUAL (LINKED-RTS-ADDR (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))) L) (READ-MEM X (MC-MEM S) L)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)))))) (MJRTY-S1P (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))) A N LST (GET-NTH 0 LST) 1 1)). This again simplifies, trivially, to: T. Case 1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL (MJRTY-K N LST CAND I K) 0)) (NUMBERP (MJRTY-K N LST CAND I K)) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (EQUAL CAND0 (MJRTY-CAND N LST CAND I K)) (EQUAL K0 (IF (EQUAL (MJRTY-CAND N LST CAND I K) (GET-NTH 0 LST)) 1 0))) (AND (MJRTY-S1P (STEPN S (MJRTY-CAND-T A N LST CAND I K)) A N LST CAND0 1 K0) (EQUAL (LINKED-RTS-ADDR (STEPN S (MJRTY-CAND-T A N LST CAND I K))) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S (MJRTY-CAND-T A N LST CAND I K))) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (MJRTY-CAND-T A N LST CAND I K)))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S (MJRTY-CAND-T A N LST CAND I K)) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (MJRTY-CAND-T A N LST CAND I K))) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, rewriting with QUOTIENT-TIMES-LESSP, and opening up MJRTY-K, EQUAL, NUMBERP, MJRTY-CAND-T, MJRTY-CAND, and AND, to 12 new goals: Case 1.12. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (MJRTY-S1P (STEPN S 17) A N LST CAND 1 0)), which again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE2, and expanding NUMBERP and EQUAL, to: T. Case 1.11. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (EQUAL CAND (GET-NTH 0 LST))) (MJRTY-S1P (STEPN S 18) A N LST CAND 1 1)). But this again simplifies, using linear arithmetic, applying QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE1, and opening up NUMBERP and EQUAL, to: T. Case 1.10. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (EQUAL (LINKED-RTS-ADDR (STEPN S 17)) (LINKED-RTS-ADDR S))). This again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE2, and expanding the functions NUMBERP and EQUAL, to: T. Case 1.9. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (EQUAL CAND (GET-NTH 0 LST))) (EQUAL (LINKED-RTS-ADDR (STEPN S 18)) (LINKED-RTS-ADDR S))). However this again simplifies, using linear arithmetic, applying QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE1, and unfolding the definitions of NUMBERP and EQUAL, to: T. Case 1.8. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (EQUAL (LINKED-A6 (STEPN S 17)) (LINKED-A6 S))). But this again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE2, and unfolding the functions NUMBERP and EQUAL, to: T. Case 1.7. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (EQUAL CAND (GET-NTH 0 LST))) (EQUAL (LINKED-A6 (STEPN S 18)) (LINKED-A6 S))). This again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE1, and unfolding NUMBERP and EQUAL, to: T. Case 1.6. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 17))) (READ-RN 32 14 (MC-RFILE S)))). But this again simplifies, using linear arithmetic, applying the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE2, and opening up the functions NUMBERP and EQUAL, to: T. Case 1.5. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (EQUAL CAND (GET-NTH 0 LST))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 18))) (READ-RN 32 14 (MC-RFILE S)))), which again simplifies, using linear arithmetic, applying the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE1, and opening up NUMBERP and EQUAL, to: T. Case 1.4. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (EQUAL (MOVEM-SAVED (STEPN S 17) 4 16 4) (MOVEM-SAVED S 4 16 4))), which again simplifies, using linear arithmetic, rewriting with the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE2, and expanding NUMBERP and EQUAL, to: T. Case 1.3. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (EQUAL CAND (GET-NTH 0 LST))) (EQUAL (MOVEM-SAVED (STEPN S 18) 4 16 4) (MOVEM-SAVED S 4 16 4))), which again simplifies, using linear arithmetic, appealing to the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE1, and expanding the functions NUMBERP and EQUAL, to: T. Case 1.2. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (EQUAL (READ-MEM X (MC-MEM (STEPN S 17)) L) (READ-MEM X (MC-MEM S) L))), which again simplifies, using linear arithmetic, rewriting with the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE2, and opening up the definitions of NUMBERP and EQUAL, to: T. Case 1.1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (EQUAL CAND (GET-NTH 0 LST))) (EQUAL (READ-MEM X (MC-MEM (STEPN S 18)) L) (READ-MEM X (MC-MEM S) L))), which again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-BASE1, and opening up the definitions of NUMBERP and EQUAL, to: T. Q.E.D. [ 0.1 1.0 0.1 ] MJRTY-S0-S1 (PROVE-LEMMA MJRTY-S0-S1-RFILE (REWRITE) (LET ((S1 (STEPN S (MJRTY-CAND-T A N LST CAND I K)))) (IMPLIES (AND (MJRTY-S0P S A N LST CAND I K) (NOT (ZEROP (MJRTY-K N LST CAND I K))) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE S1)) (READ-RN OPLEN RN (MC-RFILE S))))) ((INDUCT (MJRTY-CAND-INDUCT S N LST CAND I K)) (DISABLE MJRTY-S0P))) This formula can be simplified, using the abbreviations D2-7A2-5P, D4-7A2-5P, D6-7A2-5P, ZEROP, IMPLIES, NOT, OR, and AND, to the following four new conjectures: Case 4. (IMPLIES (AND (LESSP I N) (ZEROP K) (IMPLIES (AND (MJRTY-S0P (STEPN S 8) A N LST (GET-NTH I LST) (ADD1 I) 1) (NOT (ZEROP (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST (GET-NTH I LST) (ADD1 I) 1))) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (READ-RN OPLEN RN (MC-RFILE (STEPN S 8))))) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL (MJRTY-K N LST CAND I K) 0)) (NUMBERP (MJRTY-K N LST CAND I K)) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (MJRTY-CAND-T A N LST CAND I K)))) (READ-RN OPLEN RN (MC-RFILE S)))). This simplifies, appealing to the lemmas MJRTY-S0-S0-1, QUOTIENT-TIMES-LESSP, MJRTY-S0-S0-RFILE-1, and STEPN-LEMMA, and opening up the definitions of ZEROP, NOT, EQUAL, NUMBERP, D4-7A2-5P, D2-7A2-5P, D6-7A2-5P, AND, IMPLIES, MJRTY-K, and MJRTY-CAND-T, to: T. Case 3. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL CAND (GET-NTH I LST)) (IMPLIES (AND (MJRTY-S0P (STEPN S 9) A N LST CAND (ADD1 I) (ADD1 K)) (NOT (ZEROP (MJRTY-K N LST CAND (ADD1 I) (ADD1 K)))) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND (ADD1 I) (ADD1 K)))) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 9) (MJRTY-CAND-T A N LST CAND (ADD1 I) (ADD1 K))))) (READ-RN OPLEN RN (MC-RFILE (STEPN S 9))))) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL (MJRTY-K N LST CAND I K) 0)) (NUMBERP (MJRTY-K N LST CAND I K)) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (MJRTY-CAND-T A N LST CAND I K)))) (READ-RN OPLEN RN (MC-RFILE S)))). This simplifies, rewriting with MJRTY-S0-S0-2, QUOTIENT-TIMES-LESSP, MJRTY-S0-S0-RFILE-2, and STEPN-LEMMA, and unfolding ZEROP, NOT, EQUAL, NUMBERP, D4-7A2-5P, D2-7A2-5P, D6-7A2-5P, AND, IMPLIES, MJRTY-K, and MJRTY-CAND-T, to: T. Case 2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (IMPLIES (AND (MJRTY-S0P (STEPN S 8) A N LST CAND (ADD1 I) (SUB1 K)) (NOT (ZEROP (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)))) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND (ADD1 I) (SUB1 K)))) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 8) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))))) (READ-RN OPLEN RN (MC-RFILE (STEPN S 8))))) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL (MJRTY-K N LST CAND I K) 0)) (NUMBERP (MJRTY-K N LST CAND I K)) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (MJRTY-CAND-T A N LST CAND I K)))) (READ-RN OPLEN RN (MC-RFILE S)))), which simplifies, rewriting with MJRTY-S0-S0-3, QUOTIENT-TIMES-LESSP, MJRTY-S0-S0-RFILE-3, and STEPN-LEMMA, and opening up the functions ZEROP, NOT, EQUAL, NUMBERP, D4-7A2-5P, D2-7A2-5P, D6-7A2-5P, AND, IMPLIES, MJRTY-K, and MJRTY-CAND-T, to: T. Case 1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL (MJRTY-K N LST CAND I K) 0)) (NUMBERP (MJRTY-K N LST CAND I K)) (NOT (LESSP (QUOTIENT N 2) (MJRTY-K N LST CAND I K))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (MJRTY-CAND-T A N LST CAND I K)))) (READ-RN OPLEN RN (MC-RFILE S)))). This simplifies, rewriting with QUOTIENT-TIMES-LESSP, and unfolding the functions MJRTY-K, EQUAL, NUMBERP, and MJRTY-CAND-T, to two new goals: Case 1.2. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 17))) (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, using linear arithmetic, applying QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-RFILE-BASE2, and opening up the definitions of D6-7A2-5P, D2-7A2-5P, D4-7A2-5P, NUMBERP, and EQUAL, to: T. Case 1.1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S0P S A N LST CAND I K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (LESSP N (TIMES 2 K))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (EQUAL CAND (GET-NTH 0 LST))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 18))) (READ-RN OPLEN RN (MC-RFILE S)))). This again simplifies, using linear arithmetic, applying QUOTIENT-TIMES-LESSP and MJRTY-S0-S1-RFILE-BASE1, and unfolding D6-7A2-5P, D2-7A2-5P, D4-7A2-5P, NUMBERP, and EQUAL, to: T. Q.E.D. [ 0.0 0.4 0.0 ] MJRTY-S0-S1-RFILE (PROVE-LEMMA MJRTY-S1-SN-1 (REWRITE) (IMPLIES (AND (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP I N)) (LESSP (QUOTIENT N 2) K)) (AND (EQUAL (MC-STATUS (STEPN S 14)) 'RUNNING) (EQUAL (MC-PC (STEPN S 14)) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S 14)) CAND) (EQUAL (IREAD-DN 32 1 (STEPN S 14)) 1) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 14))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 14))) (ADD 32 (READ-AN 32 6 S) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 14)) L) (READ-MEM X (MC-MEM S) L)))) ((ENABLE IQUOTIENT))) WARNING: Note that MJRTY-S1-SN-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-SN-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S1-SN-1 will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that MJRTY-S1-SN-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S1-SN-1 will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that MJRTY-S1-SN-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-SN-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-SN-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-SN-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the proposed lemma MJRTY-S1-SN-1 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and seven replacement rules. This conjecture can be simplified, using the abbreviations NOT, MJRTY-CODE, MJRTY-S1P, AND, IMPLIES, and READ-AN, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (LESSP (QUOTIENT N 2) K)) (AND (EQUAL (MC-STATUS (STEPN S 14)) 'RUNNING) (EQUAL (MC-PC (STEPN S 14)) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S 14)) CAND) (EQUAL (IREAD-DN 32 1 (STEPN S 14)) 1) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 14))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 14))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE S)) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 14)) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, rewriting with the lemmas SUB-NEG, QUOTIENT-TIMES-LESSP, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, BGE-V0, MOVE-BMI, MOVE-N-BITP, WRITE-WRITE-RN, HEAD-READ-RN, READ-WRITE-RN, HEAD-LEMMA, ASR-NAT-RANGEP, ASR-C-BITP, SUB-BGE, ASR-INT, READ-MEMP-RAM3, READ-MEMP-RAM2, READ-WRITEM-RN, STEPN-REWRITER0, STEPN-REWRITER, and READ-MEM-NAT-RANGEP, and unfolding the functions NEG, PLUS, EQUAL, NUMBERP, EXECUTE-INS, OPCODE-FIELD, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, B-NOT, FIX-BIT, REGISTER-SHIFT-ROTATE, ASR-EFFECT, ASR-X, ASR-CVZNX, SR-CNT, I-DATA, REGISTER-ASR-INS, S&R-GROUP, IQUOTIENT, EXP, MOVE-N, MOVE-Z, MOVEQ-INS, MOVEM-EA-RN-SUBGROUP, UPDATE-RFILE, MOVEM-RNLST, READMP, OP-SZ, MOVEM-LEN, TIMES, W, READ-AN, ADDR-DISP, MOVEM-EA-RN-ADDR-MODEP, POSTINC-MODEP, MOVEM-EA-RN-INS, MISC-GROUP, UNLK-SUBGROUP, WRITE-SP, SP, WRITE-AN, LONG-READ, LONG-READP, LSZ, N-MEMBER, UNLK-INS, NOP-SUBGROUP, RTD-MAPPING, READ-SP, RTS-INS, LINKED-RTS-ADDR, IREAD-DN, NAT-TO-INT, LINKED-A6, and AND, to: T. Q.E.D. [ 0.0 1.2 0.0 ] MJRTY-S1-SN-1 (PROVE-LEMMA MJRTY-S1-SN-RFILE-1 (REWRITE) (IMPLIES (AND (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP I N)) (LESSP (QUOTIENT N 2) K) (D2-7A2-5P RN) (LEQ OPLEN 32)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 14))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))) ((ENABLE IQUOTIENT))) WARNING: Note that MJRTY-S1-SN-RFILE-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). This conjecture can be simplified, using the abbreviations D2-7A2-5P, NOT, READ-AN, MJRTY-CODE, MJRTY-S1P, AND, and IMPLIES, to the goal: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (LESSP (QUOTIENT N 2) K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 14))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))). This simplifies, applying SUB-NEG, QUOTIENT-TIMES-LESSP, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, BGE-V0, MOVE-BMI, MOVE-N-BITP, WRITE-WRITE-RN, HEAD-READ-RN, READ-WRITE-RN, HEAD-LEMMA, ASR-NAT-RANGEP, ASR-C-BITP, SUB-BGE, ASR-INT, READ-MEMP-RAM3, READ-MEMP-RAM2, READ-WRITEM-RN, STEPN-REWRITER0, and STEPN-REWRITER, and opening up the definitions of NEG, PLUS, EQUAL, NUMBERP, EXECUTE-INS, OPCODE-FIELD, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, B-NOT, FIX-BIT, REGISTER-SHIFT-ROTATE, ASR-EFFECT, ASR-X, ASR-CVZNX, SR-CNT, I-DATA, REGISTER-ASR-INS, S&R-GROUP, IQUOTIENT, EXP, MOVE-N, MOVE-Z, MOVEQ-INS, MOVEM-EA-RN-SUBGROUP, UPDATE-RFILE, MOVEM-RNLST, READMP, OP-SZ, MOVEM-LEN, TIMES, W, READ-AN, ADDR-DISP, MOVEM-EA-RN-ADDR-MODEP, POSTINC-MODEP, MOVEM-EA-RN-INS, MISC-GROUP, UNLK-SUBGROUP, WRITE-SP, SP, WRITE-AN, LONG-READ, LONG-READP, LSZ, N-MEMBER, UNLK-INS, NOP-SUBGROUP, RTD-MAPPING, READ-SP, RTS-INS, LISTP, D4-7A2-5P, D2-7A2-5P, D6-7A2-5P, and MOVEM-SAVED, to the formula: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (ADD 32 (MC-PC S) 4294967202) (MC-MEM S) 130) (MCODE-ADDRP (ADD 32 (MC-PC S) 4294967202) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 32) (RAM-ADDRP (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (MEM-ILST 4 (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) LST) (DISJOINT (READ-RN 32 8 (MC-RFILE S)) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) 32) (EQUAL (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) 0)) (NUMBERP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (LESSP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) (TIMES 2 (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (EQUAL 5 RN)) (EQUAL (HEAD 1 OPLEN) (READ-RN OPLEN RN (MC-RFILE S)))). This again simplifies, clearly, to: T. Q.E.D. [ 0.0 0.3 0.0 ] MJRTY-S1-SN-RFILE-1 (PROVE-LEMMA MJRTY-S1-SN-2 (REWRITE) (IMPLIES (AND (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP I N)) (NOT (LESSP (QUOTIENT N 2) K))) (AND (EQUAL (MC-STATUS (STEPN S 13)) 'RUNNING) (EQUAL (MC-PC (STEPN S 13)) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S 13)) CAND) (EQUAL (IREAD-DN 32 1 (STEPN S 13)) 0) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 13))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 13))) (ADD 32 (READ-AN 32 6 S) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 13)) L) (READ-MEM X (MC-MEM S) L)))) ((ENABLE IQUOTIENT))) WARNING: Note that MJRTY-S1-SN-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-SN-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S1-SN-2 will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that MJRTY-S1-SN-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S1-SN-2 will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that MJRTY-S1-SN-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-SN-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-SN-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-SN-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the proposed lemma MJRTY-S1-SN-2 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and seven replacement rules. This conjecture can be simplified, using the abbreviations NOT, MJRTY-CODE, MJRTY-S1P, AND, IMPLIES, and READ-AN, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (NOT (LESSP (QUOTIENT N 2) K))) (AND (EQUAL (MC-STATUS (STEPN S 13)) 'RUNNING) (EQUAL (MC-PC (STEPN S 13)) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S 13)) CAND) (EQUAL (IREAD-DN 32 1 (STEPN S 13)) 0) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 13))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 13))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE S)) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 13)) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, rewriting with the lemmas SUB-NEG, QUOTIENT-TIMES-LESSP, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, BGE-V0, MOVE-BMI, MOVE-N-BITP, WRITE-WRITE-RN, HEAD-READ-RN, READ-WRITE-RN, HEAD-LEMMA, ASR-NAT-RANGEP, ASR-C-BITP, SUB-BGE, ASR-INT, READ-MEMP-RAM3, READ-MEMP-RAM2, READ-WRITEM-RN, STEPN-REWRITER0, STEPN-REWRITER, and READ-MEM-NAT-RANGEP, and expanding the definitions of NEG, PLUS, EQUAL, NUMBERP, EXECUTE-INS, OPCODE-FIELD, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, B-NOT, FIX-BIT, REGISTER-SHIFT-ROTATE, ASR-EFFECT, ASR-X, ASR-CVZNX, SR-CNT, I-DATA, REGISTER-ASR-INS, S&R-GROUP, IQUOTIENT, EXP, CLR-SUBGROUP, CLR-EFFECT, B1, CLR-CVZNX, CLR-ADDR-MODEP, CLR-INS, MISC-GROUP, MOVE-N, MOVE-Z, MOVEM-EA-RN-SUBGROUP, UPDATE-RFILE, MOVEM-RNLST, READMP, OP-SZ, MOVEM-LEN, TIMES, W, READ-AN, ADDR-DISP, MOVEM-EA-RN-ADDR-MODEP, POSTINC-MODEP, MOVEM-EA-RN-INS, UNLK-SUBGROUP, WRITE-SP, SP, WRITE-AN, LONG-READ, LONG-READP, LSZ, N-MEMBER, UNLK-INS, NOP-SUBGROUP, RTD-MAPPING, READ-SP, RTS-INS, LINKED-RTS-ADDR, IREAD-DN, NAT-TO-INT, LINKED-A6, and AND, to: T. Q.E.D. [ 0.0 1.2 0.0 ] MJRTY-S1-SN-2 (PROVE-LEMMA MJRTY-S1-SN-RFILE-2 (REWRITE) (IMPLIES (AND (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP I N)) (NOT (LESSP (QUOTIENT N 2) K)) (D2-7A2-5P RN) (LEQ OPLEN 32)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 13))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))) ((ENABLE IQUOTIENT))) WARNING: Note that MJRTY-S1-SN-RFILE-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). This conjecture can be simplified, using the abbreviations D2-7A2-5P, NOT, READ-AN, MJRTY-CODE, MJRTY-S1P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (NOT (LESSP I N)) (NOT (LESSP (QUOTIENT N 2) K)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 13))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))). This simplifies, rewriting with the lemmas SUB-NEG, QUOTIENT-TIMES-LESSP, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, SET-SET-CVZNX1, SET-CVZNX-X, BGE-V0, MOVE-BMI, MOVE-N-BITP, WRITE-WRITE-RN, HEAD-READ-RN, READ-WRITE-RN, HEAD-LEMMA, ASR-NAT-RANGEP, ASR-C-BITP, SUB-BGE, ASR-INT, READ-MEMP-RAM3, READ-MEMP-RAM2, READ-WRITEM-RN, STEPN-REWRITER0, STEPN-REWRITER, and NAT-RANGEP-OF-0, and unfolding the functions NEG, PLUS, EQUAL, NUMBERP, EXECUTE-INS, OPCODE-FIELD, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, MOVE-INS, MOVE-ADDR-MODEP, MAPPING, D-MAPPING, MOVE-EFFECT, B0, MOVE-CVZNX, MOVE-MAPPING, D_MODE, MOVE-GROUP, B-NOT, FIX-BIT, REGISTER-SHIFT-ROTATE, ASR-EFFECT, ASR-X, ASR-CVZNX, SR-CNT, I-DATA, REGISTER-ASR-INS, S&R-GROUP, IQUOTIENT, EXP, CLR-SUBGROUP, CLR-EFFECT, B1, CLR-CVZNX, CLR-ADDR-MODEP, CLR-INS, MISC-GROUP, MOVE-N, MOVE-Z, MOVEM-EA-RN-SUBGROUP, UPDATE-RFILE, MOVEM-RNLST, READMP, OP-SZ, MOVEM-LEN, TIMES, W, READ-AN, ADDR-DISP, MOVEM-EA-RN-ADDR-MODEP, POSTINC-MODEP, MOVEM-EA-RN-INS, UNLK-SUBGROUP, WRITE-SP, SP, WRITE-AN, LONG-READ, LONG-READP, LSZ, N-MEMBER, UNLK-INS, NOP-SUBGROUP, RTD-MAPPING, READ-SP, RTS-INS, LISTP, D4-7A2-5P, D2-7A2-5P, D6-7A2-5P, and MOVEM-SAVED, to the new conjecture: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (ADD 32 (MC-PC S) 4294967202) (MC-MEM S) 130) (MCODE-ADDRP (ADD 32 (MC-PC S) 4294967202) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 32) (RAM-ADDRP (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (MEM-ILST 4 (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) LST) (DISJOINT (READ-RN 32 8 (MC-RFILE S)) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) 32) (EQUAL (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) 0)) (NUMBERP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (NOT (LESSP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) (TIMES 2 (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (EQUAL 5 RN)) (EQUAL 0 (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, obviously, to: T. Q.E.D. [ 0.0 0.2 0.0 ] MJRTY-S1-SN-RFILE-2 (PROVE-LEMMA MJRTY-S1-S1-1 (REWRITE) (IMPLIES (AND (MJRTY-S1P S A N LST CAND I K) (LESSP I N) (EQUAL CAND (GET-NTH I LST))) (AND (MJRTY-S1P (STEPN S 6) A N LST CAND (ADD1 I) (ADD1 K)) (EQUAL (LINKED-RTS-ADDR (STEPN S 6)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 6)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 6))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 6) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 6)) L) (READ-MEM X (MC-MEM S) L)))) ((DISABLE TIMES LESSP))) WARNING: Note that the rewrite rule MJRTY-S1-S1-1 will be stored so as to apply only to terms with the nonrecursive function symbol MJRTY-S1P. WARNING: Note that the rewrite rule MJRTY-S1-S1-1 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-RTS-ADDR. WARNING: Note that MJRTY-S1-S1-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S1-S1-1 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-A6. WARNING: Note that MJRTY-S1-S1-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-S1-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S1-S1-1 will be stored so as to apply only to terms with the nonrecursive function symbol MOVEM-SAVED. WARNING: Note that MJRTY-S1-S1-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-S1-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the proposed lemma MJRTY-S1-S1-1 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and six replacement rules. This conjecture can be simplified, using the abbreviations READ-AN, MJRTY-CODE, MJRTY-S1P, AND, and IMPLIES, to the formula: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (LESSP I N) (EQUAL CAND (GET-NTH I LST))) (AND (MJRTY-S1P (STEPN S 6) A N LST CAND (ADD1 I) (ADD1 K)) (EQUAL (LINKED-RTS-ADDR (STEPN S 6)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 6)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 6))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 6) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 6)) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, using linear arithmetic, applying the lemmas SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, READ-MEMP-RAM1-ASL, QUOTIENT-TIMES, ADD-0, HEAD-READ-RN, SET-CVZNX-X, SET-SET-CVZNX1, SUB-BEQ-INT-1, READ-MEM-NAT-RANGEP, READ-MEM-ILST-ASL, READ-WRITE-RN, HEAD-LEMMA, MC-PC-RANGEP, STEPN-REWRITER0, STEPN-REWRITER, ADD1-INT-RANGEPXX, NAT-TO-INT-RANGEP, ADD-INT, ADD1-INT-RANGEP, IPLUS-COMMUTATIVITY, PLUS-ADD1, DISJOINT-10, RAM-ADDRP-LA2, INDEX-N-X-X, PLUS-0, PLUS-COMMUTATIVITY, RAM-ADDRP-3, ROM-ADDRP-LA2, and INDEX-N-DEDUCTION2, and unfolding NEG, PLUS, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, EXP, NUMBERP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, B-NOT, TIMES, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, MAPPING, D-MAPPING, ADD-EFFECT, ADD-CVZNX, ADD-MAPPING, SCC-GROUP, IPLUS, NAT-TO-INT, NAT-RANGEP, MJRTY-CODE, MJRTY-S1P, LINKED-RTS-ADDR, LINKED-A6, MOVEM-SAVED, and AND, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (ADD 32 (MC-PC S) 4294967202) (MC-MEM S) 130) (MCODE-ADDRP (ADD 32 (MC-PC S) 4294967202) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 32) (RAM-ADDRP (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (MEM-ILST 4 (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) LST) (DISJOINT (READ-RN 32 8 (MC-RFILE S)) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) 32) (EQUAL (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) 0)) (NUMBERP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32) (GET-NTH (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) LST))) (NOT (LESSP (ADD1 (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (ADD1 (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))))), which again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.0 0.8 0.0 ] MJRTY-S1-S1-1 (PROVE-LEMMA MJRTY-S1-S1-2 (REWRITE) (IMPLIES (AND (MJRTY-S1P S A N LST CAND I K) (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST)))) (AND (MJRTY-S1P (STEPN S 5) A N LST CAND (ADD1 I) K) (EQUAL (LINKED-RTS-ADDR (STEPN S 5)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 5)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 5))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 5) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 5)) L) (READ-MEM X (MC-MEM S) L)))) ((DISABLE TIMES LESSP))) WARNING: Note that the rewrite rule MJRTY-S1-S1-2 will be stored so as to apply only to terms with the nonrecursive function symbol MJRTY-S1P. WARNING: Note that the rewrite rule MJRTY-S1-S1-2 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-RTS-ADDR. WARNING: Note that MJRTY-S1-S1-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S1-S1-2 will be stored so as to apply only to terms with the nonrecursive function symbol LINKED-A6. WARNING: Note that MJRTY-S1-S1-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-S1-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the rewrite rule MJRTY-S1-S1-2 will be stored so as to apply only to terms with the nonrecursive function symbol MOVEM-SAVED. WARNING: Note that MJRTY-S1-S1-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that MJRTY-S1-S1-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). WARNING: Note that the proposed lemma MJRTY-S1-S1-2 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and six replacement rules. This conjecture can be simplified, using the abbreviations NOT, READ-AN, MJRTY-CODE, MJRTY-S1P, AND, and IMPLIES, to the formula: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST)))) (AND (MJRTY-S1P (STEPN S 5) A N LST CAND (ADD1 I) K) (EQUAL (LINKED-RTS-ADDR (STEPN S 5)) (LINKED-RTS-ADDR S)) (EQUAL (LINKED-A6 (STEPN S 5)) (LINKED-A6 S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 5))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (MOVEM-SAVED (STEPN S 5) 4 16 4) (MOVEM-SAVED S 4 16 4)) (EQUAL (READ-MEM X (MC-MEM (STEPN S 5)) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, using linear arithmetic, applying the lemmas SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, READ-MEMP-RAM1-ASL, QUOTIENT-TIMES, ADD-0, HEAD-READ-RN, SET-CVZNX-X, SET-SET-CVZNX1, SUB-BEQ-INT-0, READ-MEM-NAT-RANGEP, READ-MEM-ILST-ASL, HEAD-LEMMA, MC-PC-RANGEP, STEPN-REWRITER0, STEPN-REWRITER, ADD-INT, ADD1-INT-RANGEP, IPLUS-COMMUTATIVITY, PLUS-ADD1, DISJOINT-10, RAM-ADDRP-LA2, INDEX-N-X-X, PLUS-0, PLUS-COMMUTATIVITY, RAM-ADDRP-3, READ-WRITE-RN, ROM-ADDRP-LA2, and INDEX-N-DEDUCTION2, and unfolding NEG, PLUS, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, EXP, NUMBERP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, B-NOT, TIMES, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, MAPPING, D-MAPPING, ADD-EFFECT, ADD-CVZNX, ADD-MAPPING, SCC-GROUP, IPLUS, NAT-TO-INT, NAT-RANGEP, MJRTY-CODE, MJRTY-S1P, LINKED-RTS-ADDR, LINKED-A6, MOVEM-SAVED, and AND, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (ADD 32 (MC-PC S) 4294967202) (MC-MEM S) 130) (MCODE-ADDRP (ADD 32 (MC-PC S) 4294967202) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 32) (RAM-ADDRP (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32))) (MEM-ILST 4 (READ-RN 32 8 (MC-RFILE S)) (MC-MEM S) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) LST) (DISJOINT (READ-RN 32 8 (MC-RFILE S)) (TIMES 4 (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) 32) (EQUAL (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32) 0)) (NUMBERP (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (NUMBERP (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32))) (LESSP (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (NOT (EQUAL (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32) (GET-NTH (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32) LST)))) (NOT (LESSP (ADD1 (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)))), which again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.0 0.9 0.0 ] MJRTY-S1-S1-2 (PROVE-LEMMA MJRTY-S1-S1-RFILE-1 (REWRITE) (IMPLIES (AND (MJRTY-S1P S A N LST CAND I K) (LESSP I N) (EQUAL CAND (GET-NTH I LST)) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 6))) (READ-RN OPLEN RN (MC-RFILE S)))) ((DISABLE TIMES LESSP))) WARNING: Note that MJRTY-S1-S1-RFILE-1 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). This formula can be simplified, using the abbreviations D2-7A2-5P, D4-7A2-5P, D6-7A2-5P, READ-AN, MJRTY-CODE, MJRTY-S1P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (LESSP I N) (EQUAL CAND (GET-NTH I LST)) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 6))) (READ-RN OPLEN RN (MC-RFILE S)))), which simplifies, using linear arithmetic, applying the lemmas SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, READ-MEMP-RAM1-ASL, QUOTIENT-TIMES, ADD-0, HEAD-READ-RN, SET-CVZNX-X, SET-SET-CVZNX1, SUB-BEQ-INT-1, READ-MEM-NAT-RANGEP, READ-MEM-ILST-ASL, READ-WRITE-RN, HEAD-LEMMA, MC-PC-RANGEP, STEPN-REWRITER0, and STEPN-REWRITER, and unfolding the definitions of NEG, PLUS, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, EXP, NUMBERP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, B-NOT, TIMES, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, MAPPING, D-MAPPING, ADD-EFFECT, ADD-CVZNX, ADD-MAPPING, and SCC-GROUP, to: T. Q.E.D. [ 0.0 0.1 0.0 ] MJRTY-S1-S1-RFILE-1 (PROVE-LEMMA MJRTY-S1-S1-RFILE-2 (REWRITE) (IMPLIES (AND (MJRTY-S1P S A N LST CAND I K) (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (D6-7A2-5P RN)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 5))) (READ-RN OPLEN RN (MC-RFILE S)))) ((DISABLE TIMES LESSP))) WARNING: Note that MJRTY-S1-S1-RFILE-2 contains the free variables K, I, CAND, LST, N, and A which will be chosen by instantiating the hypothesis: (MJRTY-S1P S A N LST CAND I K). This formula can be simplified, using the abbreviations D2-7A2-5P, D4-7A2-5P, D6-7A2-5P, NOT, READ-AN, MJRTY-CODE, MJRTY-S1P, AND, and IMPLIES, to: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) 130) (MCODE-ADDRP (SUB 32 94 (MC-PC S)) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 16 (READ-RN 32 (PLUS 8 6) (MC-RFILE S))) 32) (EQUAL A (READ-RN 32 8 (MC-RFILE S))) (EQUAL N (NAT-TO-INT (READ-RN 32 2 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 4 (MC-RFILE S)) 32)) (EQUAL CAND (NAT-TO-INT (READ-RN 32 3 (MC-RFILE S)) 32)) (EQUAL I (NAT-TO-INT (READ-RN 32 0 (MC-RFILE S)) 32)) (EQUAL K (NAT-TO-INT (READ-RN 32 1 (MC-RFILE S)) 32)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NUMBERP K) (NOT (LESSP I K)) (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 5))) (READ-RN OPLEN RN (MC-RFILE S)))), which simplifies, using linear arithmetic, applying the lemmas SUB-NEG, CDR-CONS, CAR-CONS, MC-STATUS-REWRITE, MC-RFILE-REWRITE, MC-CCR-RANGEP, MC-CCR-REWRITE, MC-MEM-REWRITE, MC-PC-REWRITE, ADD-NAT-RANGEP, PC-READ-MEM-MCODE2, PC-READ-MEMP-ROM2, SUB-BGT, READ-RN-NAT-RANGEP, SET-CVZNX-N, SUB-N-BITP, SET-CVZNX-Z, SUB-Z-BITP, SET-CVZNX-V, BITP-FIX-BIT, SUB-V-BITP, SET-CVZNX-NAT-RANGEP, ADD-ASSOCIATIVITY, PC-READ-MEM-MCODE3, PC-READ-MEMP-ROM3, ADD-EVENP, READ-MEMP-RAM1-ASL, QUOTIENT-TIMES, ADD-0, HEAD-READ-RN, SET-CVZNX-X, SET-SET-CVZNX1, SUB-BEQ-INT-0, READ-MEM-NAT-RANGEP, READ-MEM-ILST-ASL, HEAD-LEMMA, MC-PC-RANGEP, STEPN-REWRITER0, STEPN-REWRITER, and READ-WRITE-RN, and opening up the definitions of NEG, PLUS, EXECUTE-INS, OPCODE-FIELD, EQUAL, OP-LEN, CMP-INS, CMP-ADDR-MODEP, CAR, EFFEC-ADDR, CONS, DN-DIRECT, S_RN, S_MODE, MC-INSTATE, MC-HALTP, READ-DN, CDR, OPERAND, D_RN, CMP-CVZNX, UPDATE-CCR, Q, B0P, BITN, CMP-GROUP, UPDATE-PC, L, CURRENT-INS, READ-LST, LEN, LST-NUMBERP, PC-WORD-READ, PC-WORD-READP, WSZ, LESSP, INDEX-N, STEPI, B, HEAD, BCC-RA-SR, ILESSP, NEGP, BRANCH-CC, EXT, COND-FIELD, BCC-GROUP, ADD, EVENP, EXP, NUMBERP, OP-SZ, ADDR-INDEX1, IR-SCALED, INDEX-RN, INDEX-REGISTER, BITS, READ-AN, ADDR-INDEX-DISP, ADDR-INDEX, B-NOT, TIMES, ADDQ-INS, ADDQ-ADDR-MODEP, AN-DIRECT-MODEP, I-DATA, MAPPING, D-MAPPING, ADD-EFFECT, ADD-CVZNX, ADD-MAPPING, and SCC-GROUP, to: T. Q.E.D. [ 0.0 0.3 0.0 ] MJRTY-S1-S1-RFILE-2 (PROVE-LEMMA MJRTY-S1-SN (REWRITE) (LET ((SN (STEPN S (CAND-CNT-T A N LST CAND I K)))) (IMPLIES (MJRTY-S1P S A N LST CAND I K) (AND (EQUAL (MC-STATUS SN) 'RUNNING) (EQUAL (MC-PC SN) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 SN) CAND) (EQUAL (IREAD-DN 32 1 SN) (IF (LESSP (QUOTIENT N 2) (CAND-CNT N LST CAND I K)) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE SN)) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE SN)) (ADD 32 (READ-AN 32 6 S) 8)) (EQUAL (READ-MEM X (MC-MEM SN) L) (READ-MEM X (MC-MEM S) L))))) ((INDUCT (CAND-CNT-INDUCT S N LST CAND I K)) (DISABLE MJRTY-S1P LINKED-RTS-ADDR RTS-ADDR LINKED-A6 IREAD-DN))) WARNING: Note that the rewrite rule MJRTY-S1-SN will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that the rewrite rule MJRTY-S1-SN will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that the proposed lemma MJRTY-S1-SN is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and seven replacement rules. This conjecture can be simplified, using the abbreviations IMPLIES, NOT, OR, AND, and READ-AN, to three new goals: Case 3. (IMPLIES (AND (LESSP I N) (EQUAL CAND (GET-NTH I LST)) (IMPLIES (MJRTY-S1P (STEPN S 6) A N LST CAND (ADD1 I) (ADD1 K)) (AND (EQUAL (MC-STATUS (STEPN (STEPN S 6) (CAND-CNT-T A N LST CAND (ADD1 I) (ADD1 K)))) 'RUNNING) (EQUAL (MC-PC (STEPN (STEPN S 6) (CAND-CNT-T A N LST CAND (ADD1 I) (ADD1 K)))) (LINKED-RTS-ADDR (STEPN S 6))) (EQUAL (IREAD-DN 32 0 (STEPN (STEPN S 6) (CAND-CNT-T A N LST CAND (ADD1 I) (ADD1 K)))) CAND) (EQUAL (IREAD-DN 32 1 (STEPN (STEPN S 6) (CAND-CNT-T A N LST CAND (ADD1 I) (ADD1 K)))) (IF (LESSP (QUOTIENT N 2) (CAND-CNT N LST CAND (ADD1 I) (ADD1 K))) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 6) (CAND-CNT-T A N LST CAND (ADD1 I) (ADD1 K))))) (LINKED-A6 (STEPN S 6))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN (STEPN S 6) (CAND-CNT-T A N LST CAND (ADD1 I) (ADD1 K))))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE (STEPN S 6))) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 6) (CAND-CNT-T A N LST CAND (ADD1 I) (ADD1 K)))) L) (READ-MEM X (MC-MEM (STEPN S 6)) L)))) (MJRTY-S1P S A N LST CAND I K)) (AND (EQUAL (MC-STATUS (STEPN S (CAND-CNT-T A N LST CAND I K))) 'RUNNING) (EQUAL (MC-PC (STEPN S (CAND-CNT-T A N LST CAND I K))) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S (CAND-CNT-T A N LST CAND I K))) CAND) (EQUAL (IREAD-DN 32 1 (STEPN S (CAND-CNT-T A N LST CAND I K))) (IF (LESSP (QUOTIENT N 2) (CAND-CNT N LST CAND I K)) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (CAND-CNT-T A N LST CAND I K)))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (CAND-CNT-T A N LST CAND I K)))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE S)) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (CAND-CNT-T A N LST CAND I K))) L) (READ-MEM X (MC-MEM S) L)))), which simplifies, applying MJRTY-S1-S1-1, QUOTIENT-TIMES-LESSP, and STEPN-LEMMA, and opening up the functions EQUAL, NUMBERP, PLUS, AND, IMPLIES, CAND-CNT-T, and CAND-CNT, to: T. Case 2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (IMPLIES (MJRTY-S1P (STEPN S 5) A N LST CAND (ADD1 I) K) (AND (EQUAL (MC-STATUS (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K))) 'RUNNING) (EQUAL (MC-PC (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K))) (LINKED-RTS-ADDR (STEPN S 5))) (EQUAL (IREAD-DN 32 0 (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K))) CAND) (EQUAL (IREAD-DN 32 1 (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K))) (IF (LESSP (QUOTIENT N 2) (CAND-CNT N LST CAND (ADD1 I) K)) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (LINKED-A6 (STEPN S 5))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE (STEPN S 5))) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K))) L) (READ-MEM X (MC-MEM (STEPN S 5)) L)))) (MJRTY-S1P S A N LST CAND I K)) (AND (EQUAL (MC-STATUS (STEPN S (CAND-CNT-T A N LST CAND I K))) 'RUNNING) (EQUAL (MC-PC (STEPN S (CAND-CNT-T A N LST CAND I K))) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S (CAND-CNT-T A N LST CAND I K))) CAND) (EQUAL (IREAD-DN 32 1 (STEPN S (CAND-CNT-T A N LST CAND I K))) (IF (LESSP (QUOTIENT N 2) (CAND-CNT N LST CAND I K)) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (CAND-CNT-T A N LST CAND I K)))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (CAND-CNT-T A N LST CAND I K)))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE S)) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (CAND-CNT-T A N LST CAND I K))) L) (READ-MEM X (MC-MEM S) L)))). This simplifies, rewriting with MJRTY-S1-S1-2, QUOTIENT-TIMES-LESSP, and STEPN-LEMMA, and opening up the definitions of EQUAL, NUMBERP, PLUS, AND, IMPLIES, CAND-CNT-T, and CAND-CNT, to: T. Case 1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K)) (AND (EQUAL (MC-STATUS (STEPN S (CAND-CNT-T A N LST CAND I K))) 'RUNNING) (EQUAL (MC-PC (STEPN S (CAND-CNT-T A N LST CAND I K))) (LINKED-RTS-ADDR S)) (EQUAL (IREAD-DN 32 0 (STEPN S (CAND-CNT-T A N LST CAND I K))) CAND) (EQUAL (IREAD-DN 32 1 (STEPN S (CAND-CNT-T A N LST CAND I K))) (IF (LESSP (QUOTIENT N 2) (CAND-CNT N LST CAND I K)) 1 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (CAND-CNT-T A N LST CAND I K)))) (LINKED-A6 S)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (CAND-CNT-T A N LST CAND I K)))) (ADD 32 (READ-RN 32 (PLUS 8 6) (MC-RFILE S)) 8)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (CAND-CNT-T A N LST CAND I K))) L) (READ-MEM X (MC-MEM S) L)))), which simplifies, appealing to the lemma QUOTIENT-TIMES-LESSP, and opening up NUMBERP, EQUAL, CAND-CNT-T, CAND-CNT, PLUS, and AND, to 14 new conjectures: Case 1.14. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (MC-STATUS (STEPN S 13)) 'RUNNING)), which again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-2, and unfolding NUMBERP and EQUAL, to: T. Case 1.13. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (LESSP N (TIMES 2 K))) (EQUAL (MC-STATUS (STEPN S 14)) 'RUNNING)). But this again simplifies, using linear arithmetic, rewriting with the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-1, and unfolding the functions NUMBERP and EQUAL, to: T. Case 1.12. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (MC-PC (STEPN S 13)) (LINKED-RTS-ADDR S))), which again simplifies, using linear arithmetic, applying QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-2, and opening up the functions NUMBERP and EQUAL, to: T. Case 1.11. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (LESSP N (TIMES 2 K))) (EQUAL (MC-PC (STEPN S 14)) (LINKED-RTS-ADDR S))). However this again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-1, and opening up NUMBERP and EQUAL, to: T. Case 1.10. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (IREAD-DN 32 0 (STEPN S 13)) CAND)). But this again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-2, and expanding the functions NUMBERP and EQUAL, to: T. Case 1.9. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (LESSP N (TIMES 2 K))) (EQUAL (IREAD-DN 32 0 (STEPN S 14)) CAND)). However this again simplifies, using linear arithmetic, applying the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-1, and unfolding the definitions of NUMBERP and EQUAL, to: T. Case 1.8. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (IREAD-DN 32 1 (STEPN S 13)) 0)), which again simplifies, using linear arithmetic, rewriting with the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-2, and expanding the functions NUMBERP and EQUAL, to: T. Case 1.7. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (LESSP N (TIMES 2 K))) (EQUAL (IREAD-DN 32 1 (STEPN S 14)) 1)), which again simplifies, using linear arithmetic, applying QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-1, and expanding NUMBERP and EQUAL, to: T. Case 1.6. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 13))) (LINKED-A6 S))). This again simplifies, using linear arithmetic, rewriting with the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-2, and expanding the definitions of NUMBERP and EQUAL, to: T. Case 1.5. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (LESSP N (TIMES 2 K))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S 14))) (LINKED-A6 S))), which again simplifies, using linear arithmetic, rewriting with the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-1, and expanding the functions NUMBERP and EQUAL, to: T. Case 1.4. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 13))) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 8))), which again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-2, and unfolding the functions NUMBERP, EQUAL, PLUS, and READ-AN, to: T. Case 1.3. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (LESSP N (TIMES 2 K))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S 14))) (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 8))). However this again simplifies, using linear arithmetic, applying the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-1, and expanding the functions NUMBERP, EQUAL, PLUS, and READ-AN, to: T. Case 1.2. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (READ-MEM X (MC-MEM (STEPN S 13)) L) (READ-MEM X (MC-MEM S) L))), which again simplifies, using linear arithmetic, appealing to the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-2, and unfolding the definitions of NUMBERP and EQUAL, to: T. Case 1.1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (LESSP N (TIMES 2 K))) (EQUAL (READ-MEM X (MC-MEM (STEPN S 14)) L) (READ-MEM X (MC-MEM S) L))), which again simplifies, using linear arithmetic, appealing to the lemmas QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-1, and expanding NUMBERP and EQUAL, to: T. Q.E.D. [ 0.0 0.5 0.1 ] MJRTY-S1-SN (PROVE-LEMMA MJRTY-S1-SN-RFILE (REWRITE) (LET ((SN (STEPN S (CAND-CNT-T A N LST CAND I K)))) (IMPLIES (AND (MJRTY-S1P S A N LST CAND I K) (D2-7A2-5P RN) (LEQ OPLEN 32)) (EQUAL (READ-RN OPLEN RN (MC-RFILE SN)) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4)))))) ((INDUCT (CAND-CNT-INDUCT S N LST CAND I K)) (DISABLE MJRTY-S1P))) This conjecture can be simplified, using the abbreviations D2-7A2-5P, IMPLIES, NOT, OR, and AND, to three new conjectures: Case 3. (IMPLIES (AND (LESSP I N) (EQUAL CAND (GET-NTH I LST)) (IMPLIES (AND (MJRTY-S1P (STEPN S 6) A N LST CAND (ADD1 I) (ADD1 K)) (D2-7A2-5P RN) (IF (LESSP 32 OPLEN) F T)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 6) (CAND-CNT-T A N LST CAND (ADD1 I) (ADD1 K))))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE (STEPN S 6))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED (STEPN S 6) 4 16 4))))) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (CAND-CNT-T A N LST CAND I K)))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))), which simplifies, applying MJRTY-S1-S1-1, SUB-NEG, STEPN-LEMMA, and MJRTY-S1-S1-RFILE-1, and opening up D2-7A2-5P, AND, D4-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, MOVEM-SAVED, IMPLIES, EQUAL, NUMBERP, and CAND-CNT-T, to the following four new conjectures: Case 3.4. (IMPLIES (AND (LESSP I N) (EQUAL RN 2) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 6) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S1P S A N LST (GET-NTH I LST) I K) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 2 (MC-RFILE (STEPN (STEPN S 6) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 2 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 3.3. (IMPLIES (AND (LESSP I N) (EQUAL RN 4) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 6) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S1P S A N LST (GET-NTH I LST) I K) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 4 (MC-RFILE (STEPN (STEPN S 6) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 4 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, obviously, to: T. Case 3.2. (IMPLIES (AND (LESSP I N) (EQUAL RN 5) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 6) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S1P S A N LST (GET-NTH I LST) I K) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 5 (MC-RFILE (STEPN (STEPN S 6) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 5 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, obviously, to: T. Case 3.1. (IMPLIES (AND (LESSP I N) (EQUAL RN 3) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 6) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S1P S A N LST (GET-NTH I LST) I K) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 3 (MC-RFILE (STEPN (STEPN S 6) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (GET-VLST OPLEN 0 3 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (IMPLIES (AND (MJRTY-S1P (STEPN S 5) A N LST CAND (ADD1 I) K) (D2-7A2-5P RN) (IF (LESSP 32 OPLEN) F T)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE (STEPN S 5))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED (STEPN S 5) 4 16 4))))) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (CAND-CNT-T A N LST CAND I K)))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))). This simplifies, rewriting with MJRTY-S1-S1-2, SUB-NEG, STEPN-LEMMA, and MJRTY-S1-S1-RFILE-2, and unfolding the definitions of D2-7A2-5P, AND, D4-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, MOVEM-SAVED, IMPLIES, EQUAL, NUMBERP, and CAND-CNT-T, to four new goals: Case 2.4. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 2) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 2 (MC-RFILE (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (GET-VLST OPLEN 0 2 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, clearly, to: T. Case 2.3. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 4) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 4 (MC-RFILE (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (GET-VLST OPLEN 0 4 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 2.2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 5) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 5 (MC-RFILE (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (GET-VLST OPLEN 0 5 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, trivially, to: T. Case 2.1. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL RN 3) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4))) (MJRTY-S1P S A N LST CAND I K) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN 3 (MC-RFILE (STEPN (STEPN S 5) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (GET-VLST OPLEN 0 3 '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, clearly, to: T. Case 1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (CAND-CNT-T A N LST CAND I K)))) (IF (D6-7A2-5P RN) (READ-RN OPLEN RN (MC-RFILE S)) (GET-VLST OPLEN 0 RN '(2 3 4 5) (MOVEM-SAVED S 4 16 4))))). This simplifies, appealing to the lemmas QUOTIENT-TIMES-LESSP and SUB-NEG, and expanding NUMBERP, EQUAL, CAND-CNT-T, D4-7A2-5P, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to the following ten new goals: Case 1.10. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 2) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 13))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S1-SN-RFILE-2, and unfolding EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.9. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 4) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 13))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). But this again simplifies, using linear arithmetic, applying the lemmas QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S1-SN-RFILE-2, and opening up the functions EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.8. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 5) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 13))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, using linear arithmetic, applying the lemmas QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S1-SN-RFILE-2, and opening up EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.7. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 3) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 13))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, using linear arithmetic, rewriting with the lemmas QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S1-SN-RFILE-2, and expanding EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.6. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 2) (LESSP N (TIMES 2 K))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 14))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, using linear arithmetic, appealing to the lemmas QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S1-SN-RFILE-1, and expanding the functions EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.5. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 4) (LESSP N (TIMES 2 K))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 14))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, using linear arithmetic, rewriting with the lemmas QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S1-SN-RFILE-1, and opening up the definitions of EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.4. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 5) (LESSP N (TIMES 2 K))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 14))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))), which again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S1-SN-RFILE-1, and opening up the definitions of EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.3. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL RN 3) (LESSP N (TIMES 2 K))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 14))) (GET-VLST OPLEN 0 RN '(2 3 4 5) (READM-MEM 4 (ADD 32 (READ-RN 32 14 (MC-RFILE S)) 4294967280) (MC-MEM S) 4)))). This again simplifies, using linear arithmetic, appealing to the lemmas QUOTIENT-TIMES-LESSP, SUB-NEG, and MJRTY-S1-SN-RFILE-1, and unfolding the functions EQUAL, NUMBERP, D2-7A2-5P, D6-7A2-5P, NEG, READ-AN, PLUS, and MOVEM-SAVED, to: T. Case 1.2. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (NOT (LESSP N (TIMES 2 K)))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 13))) (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, using linear arithmetic, applying QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-RFILE-2, and opening up D2-7A2-5P, NUMBERP, EQUAL, D4-7A2-5P, and D6-7A2-5P, to: T. Case 1.1. (IMPLIES (AND (NOT (LESSP I N)) (MJRTY-S1P S A N LST CAND I K) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5)) (LESSP N (TIMES 2 K))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 14))) (READ-RN OPLEN RN (MC-RFILE S)))). But this again simplifies, using linear arithmetic, rewriting with QUOTIENT-TIMES-LESSP and MJRTY-S1-SN-RFILE-1, and expanding the functions D2-7A2-5P, NUMBERP, EQUAL, D4-7A2-5P, and D6-7A2-5P, to: T. Q.E.D. [ 0.0 0.3 0.0 ] MJRTY-S1-SN-RFILE (PROVE-LEMMA MJRTY-STATEP-INFO NIL (IMPLIES (MJRTY-STATEP S A N LST) (NOT (ZEROP N)))) This conjecture can be simplified, using the abbreviations NOT, SP, L, READ-AN, READ-SP, MJRTY-CODE, MJRTY-STATEP, and IMPLIES, to the conjecture: (IMPLIES (AND (EQUAL (MC-STATUS S) 'RUNNING) (EVENP (MC-PC S)) (ROM-ADDRP (MC-PC S) (MC-MEM S) 130) (MCODE-ADDRP (MC-PC S) (MC-MEM S) '(78 86 0 0 72 231 60 0 32 110 0 8 36 46 0 12 66 129 66 128 180 128 111 30 74 129 102 8 38 48 12 0 114 1 96 12 182 176 12 0 102 4 82 129 96 2 83 129 82 128 180 128 110 226 40 3 74 129 103 54 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 40 66 129 66 128 180 128 111 14 182 176 12 0 102 2 82 129 82 128 180 128 110 242 32 2 108 2 82 128 226 128 176 129 108 4 122 1 96 2 66 133 32 4 34 5 76 238 0 60 255 240 78 94 78 117)) (RAM-ADDRP (SUB 32 20 (READ-RN 32 (PLUS 8 7) (MC-RFILE S))) (MC-MEM S) 32) (RAM-ADDRP A (MC-MEM S) (TIMES 4 N)) (MEM-ILST 4 A (MC-MEM S) N LST) (DISJOINT A (TIMES 4 N) (SUB 32 20 (READ-RN 32 (PLUS 8 7) (MC-RFILE S))) 32) (EQUAL A (READ-MEM (ADD 32 (READ-RN 32 (PLUS 8 7) (MC-RFILE S)) 4) (MC-MEM S) 4)) (EQUAL N (IREAD-MEM (ADD 32 (READ-RN 32 (PLUS 8 7) (MC-RFILE S)) 8) (MC-MEM S) 4)) (NOT (EQUAL N 0)) (NUMBERP N)) (NOT (ZEROP N))). This simplifies, applying SUB-NEG, and unfolding the definitions of PLUS, NEG, TIMES, IREAD-MEM, and ZEROP, to: T. Q.E.D. [ 0.0 0.0 0.0 ] MJRTY-STATEP-INFO (PROVE-LEMMA MJRTY-CORRECTNESS (REWRITE) (LET ((SN (STEPN S (MJRTY-T A N LST)))) (IMPLIES (MJRTY-STATEP S A N LST) (AND (EQUAL (MC-STATUS SN) 'RUNNING) (EQUAL (MC-PC SN) (RTS-ADDR S)) (EQUAL (READ-RN 32 14 (MC-RFILE SN)) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (READ-RN 32 15 (MC-RFILE SN)) (ADD 32 (READ-SP S) 4)) (IMPLIES (AND (D2-7A2-5P RN) (LEQ OPLEN 32)) (EQUAL (READ-RN OPLEN RN (MC-RFILE SN)) (READ-RN OPLEN RN (MC-RFILE S)))) (IMPLIES (DISJOINT (SUB 32 20 (READ-SP S)) 32 X K) (EQUAL (READ-MEM X (MC-MEM SN) K) (READ-MEM X (MC-MEM S) K))) (EQUAL (IREAD-DN 32 0 SN) (MJRTY-CAND N LST 0 0 0)) (EQUAL (IREAD-DN 32 1 SN) (IF (MJRTY-P N LST 0 0 0) 1 0))))) ((USE (MJRTY-STATEP-INFO)) (DISABLE IREAD-DN LINKED-A6 LINKED-RTS-ADDR MJRTY-STATEP MJRTY-S0P MJRTY-S1P))) WARNING: Note that the rewrite rule MJRTY-CORRECTNESS will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that the rewrite rule MJRTY-CORRECTNESS will be stored so as to apply only to terms with the nonrecursive function symbol IREAD-DN. WARNING: Note that the proposed lemma MJRTY-CORRECTNESS is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and eight replacement rules. This conjecture can be simplified, using the abbreviations IMPLIES, SP, L, READ-AN, and READ-SP, to the formula: (IMPLIES (AND (IMPLIES (MJRTY-STATEP S A N LST) (NOT (ZEROP N))) (MJRTY-STATEP S A N LST)) (AND (EQUAL (MC-STATUS (STEPN S (MJRTY-T A N LST))) 'RUNNING) (EQUAL (MC-PC (STEPN S (MJRTY-T A N LST))) (RTS-ADDR S)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (MJRTY-T A N LST)))) (READ-RN 32 14 (MC-RFILE S))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (MJRTY-T A N LST)))) (ADD 32 (READ-RN 32 (PLUS 8 7) (MC-RFILE S)) 4)) (IMPLIES (AND (D2-7A2-5P RN) (IF (LESSP 32 OPLEN) F T)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (MJRTY-T A N LST)))) (READ-RN OPLEN RN (MC-RFILE S)))) (IMPLIES (DISJOINT (SUB 32 20 (READ-RN 32 (PLUS 8 7) (MC-RFILE S))) 32 X K) (EQUAL (READ-MEM X (MC-MEM (STEPN S (MJRTY-T A N LST))) K) (READ-MEM X (MC-MEM S) K))) (EQUAL (IREAD-DN 32 0 (STEPN S (MJRTY-T A N LST))) (MJRTY-CAND N LST 0 0 0)) (EQUAL (IREAD-DN 32 1 (STEPN S (MJRTY-T A N LST))) (IF (MJRTY-P N LST 0 0 0) 1 0)))). This simplifies, rewriting with QUOTIENT-TIMES-LESSP and SUB-NEG, and opening up ZEROP, NOT, IMPLIES, NUMBERP, EQUAL, MJRTY-T, READ-AN, PLUS, RTS-ADDR, D2-7A2-5P, AND, NEG, and MJRTY-P, to 44 new conjectures: Case 44.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (MC-STATUS (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) 'RUNNING)), which again simplifies, rewriting with the lemmas STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and unfolding OR, LESSP, TIMES, NUMBERP, EQUAL, and ZEROP, to: T. Case 43.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (MC-STATUS (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) 'RUNNING)), which again simplifies, rewriting with STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and expanding OR, NUMBERP, EQUAL, and ZEROP, to: T. Case 42.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (MC-STATUS (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0))))) 'RUNNING)). This again simplifies, using linear arithmetic, applying STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and expanding the functions EQUAL and NUMBERP, to: T. Case 41.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (EQUAL (MC-STATUS (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1))))) 'RUNNING)). But this again simplifies, using linear arithmetic, applying STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and unfolding EQUAL and NUMBERP, to: T. Case 40.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (MC-PC (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) (READ-MEM (READ-RN 32 15 (MC-RFILE S)) (MC-MEM S) 4))). But this again simplifies, rewriting with STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and expanding the definitions of OR, LESSP, TIMES, NUMBERP, EQUAL, ZEROP, READ-AN, PLUS, and RTS-ADDR, to: T. Case 39.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (MC-PC (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) (READ-MEM (READ-RN 32 15 (MC-RFILE S)) (MC-MEM S) 4))). This again simplifies, applying STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and opening up the functions OR, NUMBERP, EQUAL, ZEROP, READ-AN, PLUS, and RTS-ADDR, to: T. Case 38.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (MC-PC (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0))))) (READ-MEM (READ-RN 32 15 (MC-RFILE S)) (MC-MEM S) 4))). This again simplifies, using linear arithmetic, rewriting with STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and opening up EQUAL, NUMBERP, READ-AN, PLUS, and RTS-ADDR, to: T. Case 37.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (EQUAL (MC-PC (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1))))) (READ-MEM (READ-RN 32 15 (MC-RFILE S)) (MC-MEM S) 4))). However this again simplifies, using linear arithmetic, applying STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and opening up EQUAL, NUMBERP, READ-AN, PLUS, and RTS-ADDR, to: T. Case 36.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1))))) (READ-RN 32 14 (MC-RFILE S)))). But this again simplifies, applying STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and opening up the definitions of OR, LESSP, TIMES, NUMBERP, EQUAL, ZEROP, PLUS, and READ-AN, to: T. Case 35.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1))))) (READ-RN 32 14 (MC-RFILE S)))). But this again simplifies, applying STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and expanding the definitions of OR, NUMBERP, EQUAL, ZEROP, PLUS, and READ-AN, to: T. Case 34.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0)))))) (READ-RN 32 14 (MC-RFILE S)))). However this again simplifies, using linear arithmetic, appealing to the lemmas STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and unfolding the functions EQUAL, NUMBERP, PLUS, and READ-AN, to: T. Case 33.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (EQUAL (READ-RN 32 14 (MC-RFILE (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1)))))) (READ-RN 32 14 (MC-RFILE S)))), which again simplifies, using linear arithmetic, rewriting with the lemmas STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and unfolding the definitions of EQUAL, NUMBERP, PLUS, and READ-AN, to: T. Case 32.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1))))) (ADD 32 (READ-RN 32 15 (MC-RFILE S)) 4))), which again simplifies, applying the lemmas STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, SUB-NEG, ADD-ASSOCIATIVITY, and MJRTY-S0-SN, and expanding OR, LESSP, TIMES, NUMBERP, EQUAL, ZEROP, NEG, READ-SP, L, SP, PLUS, READ-AN, and ADD, to: T. Case 31.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1))))) (ADD 32 (READ-RN 32 15 (MC-RFILE S)) 4))), which again simplifies, rewriting with the lemmas STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, SUB-NEG, ADD-ASSOCIATIVITY, and MJRTY-S0-SN, and unfolding the definitions of OR, NUMBERP, EQUAL, ZEROP, NEG, READ-SP, L, SP, PLUS, READ-AN, and ADD, to: T. Case 30.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0)))))) (ADD 32 (READ-RN 32 15 (MC-RFILE S)) 4))), which again simplifies, using linear arithmetic, applying STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, SUB-NEG, ADD-ASSOCIATIVITY, and MJRTY-S1-SN, and opening up EQUAL, NUMBERP, NEG, READ-SP, L, SP, PLUS, READ-AN, and ADD, to: T. Case 29.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (EQUAL (READ-RN 32 15 (MC-RFILE (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1)))))) (ADD 32 (READ-RN 32 15 (MC-RFILE S)) 4))). However this again simplifies, using linear arithmetic, rewriting with the lemmas STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, SUB-NEG, ADD-ASSOCIATIVITY, and MJRTY-S1-SN, and unfolding the definitions of EQUAL, NUMBERP, NEG, READ-SP, L, SP, PLUS, READ-AN, and ADD, to: T. Case 28.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1))))) (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, rewriting with STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, GET-VLST-READM-RN, and MJRTY-S0-SN-RFILE, and expanding D2-7A2-5P, OR, NUMBERP, EQUAL, ZEROP, D4-7A2-5P, D6-7A2-5P, CDR, CAR, LISTP, and N-MEMBER, to the new goal: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1))) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 14))) (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, applying the lemma MJRTY-S-S0-RFILE, and opening up D6-7A2-5P, D2-7A2-5P, and D4-7A2-5P, to: T. Case 27.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1))))) (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, appealing to the lemmas STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, GET-VLST-READM-RN, and MJRTY-S0-SN-RFILE, and opening up D2-7A2-5P, OR, LESSP, TIMES, NUMBERP, EQUAL, ZEROP, D4-7A2-5P, D6-7A2-5P, CDR, CAR, LISTP, and N-MEMBER, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S 14))) (READ-RN OPLEN RN (MC-RFILE S)))). But this again simplifies, rewriting with the lemma MJRTY-S-S0-RFILE, and expanding the definitions of D6-7A2-5P, D2-7A2-5P, and D4-7A2-5P, to: T. Case 26.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1)))))) (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, using linear arithmetic, applying STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, GET-VLST-READM-RN, and MJRTY-S1-SN-RFILE, and unfolding the functions D2-7A2-5P, EQUAL, NUMBERP, D4-7A2-5P, D6-7A2-5P, CDR, CAR, LISTP, and N-MEMBER, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 14) (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1)))) (READ-RN OPLEN RN (MC-RFILE S)))), which again simplifies, using linear arithmetic, applying QUOTIENT-TIMES-LESSP, MJRTY-S-S0, MJRTY-S-S0-RFILE, and MJRTY-S0-S1-RFILE, and unfolding D6-7A2-5P, D2-7A2-5P, D4-7A2-5P, NUMBERP, and EQUAL, to: T. Case 25.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0)))))) (READ-RN OPLEN RN (MC-RFILE S)))). But this again simplifies, using linear arithmetic, rewriting with the lemmas STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, GET-VLST-READM-RN, and MJRTY-S1-SN-RFILE, and opening up the definitions of D2-7A2-5P, EQUAL, NUMBERP, D4-7A2-5P, D6-7A2-5P, CDR, CAR, LISTP, and N-MEMBER, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL RN 0)) (NUMBERP RN) (NOT (EQUAL RN 1)) (NOT (EQUAL RN 8)) (NOT (EQUAL RN 9)) (NOT (EQUAL RN 14)) (NOT (EQUAL RN 15)) (NOT (LESSP 32 OPLEN)) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (NOT (EQUAL RN 2)) (NOT (EQUAL RN 3)) (NOT (EQUAL RN 4)) (NOT (EQUAL RN 5))) (EQUAL (READ-RN OPLEN RN (MC-RFILE (STEPN (STEPN S 14) (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1)))) (READ-RN OPLEN RN (MC-RFILE S)))). But this again simplifies, using linear arithmetic, applying QUOTIENT-TIMES-LESSP, MJRTY-S-S0, MJRTY-S-S0-RFILE, and MJRTY-S0-S1-RFILE, and expanding the functions D6-7A2-5P, D2-7A2-5P, D4-7A2-5P, NUMBERP, and EQUAL, to: T. Case 24.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (DISJOINT (ADD 32 (READ-RN 32 15 (MC-RFILE S)) 4294967276) 32 X K) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (READ-MEM X (MC-MEM (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) K) (READ-MEM X (MC-MEM S) K))). This again simplifies, using linear arithmetic, applying STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, DISJOINT-6-UINT, SUB-NEG, MJRTY-S-S0-MEM, and MJRTY-S0-SN, and expanding the functions OR, NUMBERP, EQUAL, ZEROP, INDEX-N, LESSP, NEG, READ-SP, L, SP, PLUS, and READ-AN, to: T. Case 23.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (DISJOINT (ADD 32 (READ-RN 32 15 (MC-RFILE S)) 4294967276) 32 X K) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (READ-MEM X (MC-MEM (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) K) (READ-MEM X (MC-MEM S) K))). But this again simplifies, using linear arithmetic, applying STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, DISJOINT-6-UINT, SUB-NEG, MJRTY-S-S0-MEM, and MJRTY-S0-SN, and opening up the definitions of OR, LESSP, TIMES, NUMBERP, EQUAL, ZEROP, INDEX-N, NEG, READ-SP, L, SP, PLUS, and READ-AN, to: T. Case 22.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (DISJOINT (ADD 32 (READ-RN 32 15 (MC-RFILE S)) 4294967276) 32 X K) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (EQUAL (READ-MEM X (MC-MEM (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1))))) K) (READ-MEM X (MC-MEM S) K))). This again simplifies, using linear arithmetic, appealing to the lemmas STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, DISJOINT-6-UINT, SUB-NEG, MJRTY-S-S0-MEM, and MJRTY-S1-SN, and unfolding the definitions of EQUAL, NUMBERP, INDEX-N, LESSP, NEG, READ-SP, L, SP, PLUS, and READ-AN, to: T. Case 21.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (DISJOINT (ADD 32 (READ-RN 32 15 (MC-RFILE S)) 4294967276) 32 X K) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (READ-MEM X (MC-MEM (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0))))) K) (READ-MEM X (MC-MEM S) K))), which again simplifies, using linear arithmetic, applying STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, DISJOINT-6-UINT, SUB-NEG, MJRTY-S-S0-MEM, and MJRTY-S1-SN, and opening up the functions EQUAL, NUMBERP, INDEX-N, LESSP, NEG, READ-SP, L, SP, PLUS, and READ-AN, to: T. Case 20.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (IREAD-DN 32 0 (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) (MJRTY-CAND N LST 0 0 0))). This again simplifies, appealing to the lemmas STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and unfolding OR, LESSP, TIMES, NUMBERP, EQUAL, and ZEROP, to the goal: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) (MJRTY-CAND N LST 0 0 0))). This again simplifies, unfolding ADD1, LESSP, EQUAL, and MJRTY-CAND, to: T. Case 19.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (IREAD-DN 32 0 (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) (MJRTY-CAND N LST 0 0 0))), which again simplifies, applying the lemmas STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and opening up the definitions of OR, NUMBERP, EQUAL, and ZEROP, to the formula: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) (MJRTY-CAND N LST 0 0 0))). However this again simplifies, expanding the functions ADD1, LESSP, EQUAL, and MJRTY-CAND, to: T. Case 18.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (IREAD-DN 32 0 (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0))))) (MJRTY-CAND N LST 0 0 0))), which again simplifies, using linear arithmetic, rewriting with the lemmas STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and unfolding the definitions of EQUAL, NUMBERP, ADD1, LESSP, and MJRTY-CAND, to: T. Case 17.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (EQUAL (IREAD-DN 32 0 (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1))))) (MJRTY-CAND N LST 0 0 0))), which again simplifies, using linear arithmetic, appealing to the lemmas STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and expanding EQUAL, NUMBERP, ADD1, LESSP, and MJRTY-CAND, to: T. Case 16.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (EQUAL (MJRTY-K N LST 0 0 0) 0) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) 0)), which again simplifies, unfolding the definitions of ADD1, LESSP, EQUAL, MJRTY-K, and TIMES, to: T. Case 15.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (EQUAL (MJRTY-K N LST 0 0 0) 0) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) 0)), which again simplifies, rewriting with STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and unfolding ADD1, LESSP, EQUAL, MJRTY-K, OR, TIMES, NUMBERP, and ZEROP, to: T. Case 14.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST 0 0 0)))) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) 0)). This again simplifies, opening up the definitions of ADD1, LESSP, EQUAL, and MJRTY-K, to: T. Case 13.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST 0 0 0)))) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) 0)), which again simplifies, applying STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and expanding the definitions of ADD1, LESSP, EQUAL, MJRTY-K, TIMES, OR, NUMBERP, and ZEROP, to: T. Case 12.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST 0 0 0)))) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0))))) 0)). This again simplifies, using linear arithmetic, rewriting with STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and unfolding the functions ADD1, LESSP, EQUAL, MJRTY-K, MJRTY-CAND, and NUMBERP, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 0 0)))) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0))))), which again simplifies, expanding ADD1, LESSP, EQUAL, and CAND-CNT, to: T. Case 11.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (EQUAL (MJRTY-K N LST 0 0 0) 0) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0))))) 0)), which again simplifies, opening up the definitions of ADD1, LESSP, EQUAL, and MJRTY-K, to: T. Case 10.(IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST 0 0 0)))) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1))))) 0)), which again simplifies, using linear arithmetic, rewriting with STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and expanding the functions ADD1, LESSP, EQUAL, MJRTY-K, MJRTY-CAND, and NUMBERP, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST (GET-NTH 0 LST) 0 0)))) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST (GET-NTH 0 LST) 1 1))))), which again simplifies, opening up the definitions of ADD1, LESSP, EQUAL, and CAND-CNT, to: T. Case 9. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (EQUAL (MJRTY-K N LST 0 0 0) 0) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1))))) 0)), which again simplifies, opening up ADD1, LESSP, EQUAL, and MJRTY-K, to: T. Case 8. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST 0 0 0) 0)) (LESSP N (TIMES 2 (MJRTY-K N LST 0 0 0))) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) 1)), which again simplifies, opening up the definitions of ADD1, LESSP, EQUAL, and MJRTY-K, to: T. Case 7. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST 0 0 0) 0)) (LESSP N (TIMES 2 (MJRTY-K N LST 0 0 0))) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) 1)), which again simplifies, rewriting with STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and expanding the functions ADD1, LESSP, EQUAL, MJRTY-K, OR, NUMBERP, and ZEROP, to: T. Case 6. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST 0 0 0) 0)) (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0))) (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) 1)). This again simplifies, unfolding the functions ADD1, LESSP, EQUAL, and MJRTY-K, to: T. Case 5. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST 0 0 0) 0)) (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0))) (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1)))) 1)), which again simplifies, applying STEPN-LEMMA, QUOTIENT-TIMES-LESSP, MJRTY-S-S0, and MJRTY-S0-SN, and unfolding the definitions of ADD1, LESSP, EQUAL, MJRTY-K, OR, NUMBERP, and ZEROP, to: T. Case 4. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST 0 0 0) 0)) (LESSP N (TIMES 2 (MJRTY-K N LST 0 0 0))) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0))))) 1)). This again simplifies, unfolding the functions ADD1, LESSP, EQUAL, and MJRTY-K, to: T. Case 3. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST 0 0 0) 0)) (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0))) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0))))) 1)), which again simplifies, using linear arithmetic, rewriting with STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and opening up ADD1, LESSP, EQUAL, MJRTY-K, MJRTY-CAND, and NUMBERP, to the new goal: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 0 0))) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0)))), which again simplifies, opening up the definitions of ADD1, LESSP, EQUAL, and CAND-CNT, to: T. Case 2. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST 0 0 0) 0)) (LESSP N (TIMES 2 (MJRTY-K N LST 0 0 0))) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1))))) 1)), which again simplifies, unfolding the functions ADD1, LESSP, EQUAL, and MJRTY-K, to: T. Case 1. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (NOT (EQUAL (MJRTY-K N LST 0 0 0) 0)) (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0))) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (EQUAL (IREAD-DN 32 1 (STEPN S (SPLUS 14 (SPLUS (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1))))) 1)), which again simplifies, using linear arithmetic, applying STEPN-LEMMA, MJRTY-S0-S1, MJRTY-S-S0, QUOTIENT-TIMES-LESSP, and MJRTY-S1-SN, and expanding the functions ADD1, LESSP, EQUAL, MJRTY-K, MJRTY-CAND, and NUMBERP, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (MJRTY-STATEP S A N LST) (LESSP N (TIMES 2 (CAND-CNT N LST (GET-NTH 0 LST) 0 0))) (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (LESSP N (TIMES 2 (CAND-CNT N LST (GET-NTH 0 LST) 1 1)))), which again simplifies, unfolding ADD1, LESSP, EQUAL, and CAND-CNT, to: T. Q.E.D. [ 0.0 1.2 0.2 ] MJRTY-CORRECTNESS (DISABLE MJRTY-T) [ 0.0 0.0 0.0 ] MJRTY-T-OFF (PROVE-LEMMA MJRTY-CAND-0 (REWRITE) (EQUAL (MJRTY-CAND N LST X N K) X) ((EXPAND (MJRTY-CAND N LST X N K)))) This formula simplifies, unfolding the definition of MJRTY-CAND, to the following four new goals: Case 4. (IMPLIES (AND (LESSP N N) (NOT (NUMBERP K))) (EQUAL (MJRTY-CAND N LST (GET-NTH N LST) (ADD1 N) 1) X)). This again simplifies, using linear arithmetic, to: T. Case 3. (IMPLIES (AND (LESSP N N) (EQUAL K 0)) (EQUAL (MJRTY-CAND N LST (GET-NTH N LST) (ADD1 N) 1) X)), which again simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (LESSP N N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL X (GET-NTH N LST))) (EQUAL (MJRTY-CAND N LST X (ADD1 N) (ADD1 K)) X)), which again simplifies, using linear arithmetic, to: T. Case 1. (IMPLIES (AND (LESSP N N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL X (GET-NTH N LST)))) (EQUAL (MJRTY-CAND N LST X (ADD1 N) (SUB1 K)) X)), which again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.0 0.0 0.0 ] MJRTY-CAND-0 (PROVE-LEMMA MJRTY-CAND-1 (REWRITE) (EQUAL (MJRTY-CAND (ADD1 N) LST X N K) (IF (ZEROP K) (GET-NTH N LST) X)) ((EXPAND (MJRTY-CAND (ADD1 N) LST X N K)))) This formula simplifies, applying LESSP-SUB1, SUB1-ADD1, and MJRTY-CAND-0, and unfolding MJRTY-CAND, LESSP, and ZEROP, to: T. Q.E.D. [ 0.0 0.0 0.0 ] MJRTY-CAND-1 (PROVE-LEMMA MJRTY-K-0 (REWRITE) (EQUAL (MJRTY-K N LST X N K) K) ((EXPAND (MJRTY-K N LST X N K)))) This formula simplifies, unfolding the definition of MJRTY-K, to the following four new goals: Case 4. (IMPLIES (AND (LESSP N N) (NOT (NUMBERP K))) (EQUAL (MJRTY-K N LST (GET-NTH N LST) (ADD1 N) 1) K)). This again simplifies, using linear arithmetic, to: T. Case 3. (IMPLIES (AND (LESSP N N) (EQUAL K 0)) (EQUAL (MJRTY-K N LST (GET-NTH N LST) (ADD1 N) 1) K)), which again simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (LESSP N N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL X (GET-NTH N LST))) (EQUAL (MJRTY-K N LST X (ADD1 N) (ADD1 K)) K)), which again simplifies, using linear arithmetic, to: T. Case 1. (IMPLIES (AND (LESSP N N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL X (GET-NTH N LST)))) (EQUAL (MJRTY-K N LST X (ADD1 N) (SUB1 K)) K)), which again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.0 0.0 0.0 ] MJRTY-K-0 (PROVE-LEMMA MJRTY-K-1 (REWRITE) (EQUAL (MJRTY-K (ADD1 N) LST X N K) (IF (ZEROP K) 1 (IF (EQUAL X (GET-NTH N LST)) (ADD1 K) (SUB1 K)))) ((EXPAND (MJRTY-K (ADD1 N) LST X N K)))) This conjecture simplifies, applying LESSP-SUB1, SUB1-ADD1, and MJRTY-K-0, and unfolding the definitions of MJRTY-K, LESSP, and ZEROP, to: T. Q.E.D. [ 0.0 0.0 0.0 ] MJRTY-K-1 (PROVE-LEMMA CAND-CNT-0 (REWRITE) (EQUAL (CAND-CNT N LST X N K) K) ((EXPAND (CAND-CNT N LST X N K)))) This formula simplifies, unfolding the definition of CAND-CNT, to the following two new goals: Case 2. (IMPLIES (AND (LESSP N N) (EQUAL X (GET-NTH N LST))) (EQUAL (CAND-CNT N LST X (ADD1 N) (ADD1 K)) K)). This again simplifies, using linear arithmetic, to: T. Case 1. (IMPLIES (AND (LESSP N N) (NOT (EQUAL X (GET-NTH N LST)))) (EQUAL (CAND-CNT N LST X (ADD1 N) K) K)), which again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.0 0.0 0.0 ] CAND-CNT-0 (PROVE-LEMMA CAND-CNT-1 (REWRITE) (EQUAL (CAND-CNT (ADD1 N) LST X N K) (IF (EQUAL X (GET-NTH N LST)) (ADD1 K) K)) ((EXPAND (CAND-CNT (ADD1 N) LST X N K)))) This formula simplifies, rewriting with the lemmas LESSP-SUB1, SUB1-ADD1, and CAND-CNT-0, and expanding CAND-CNT and LESSP, to: T. Q.E.D. [ 0.0 0.0 0.0 ] CAND-CNT-1 (PROVE-LEMMA MJRTY-K-LEMMA (REWRITE) (IMPLIES (AND (LEQ I N) (LEQ J I) (NUMBERP I)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-K N LST X J K))) ((ENABLE GET-NTH))) Call the conjecture *1. Let us appeal to the induction principle. The recursive terms in the conjecture suggest eight inductions. They merge into three likely candidate inductions. However, only one is unflawed. We will induct according to the following scheme: (AND (IMPLIES (AND (LESSP J I) (ZEROP K) (p N LST I (GET-NTH J LST) (ADD1 J) 1)) (p N LST I X J K)) (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (EQUAL X (GET-NTH J LST)) (p N LST I X (ADD1 J) (ADD1 K))) (p N LST I X J K)) (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (NOT (EQUAL X (GET-NTH J LST))) (p N LST I X (ADD1 J) (SUB1 K))) (p N LST I X J K)) (IMPLIES (NOT (LESSP J I)) (p N LST I X J K))). Linear arithmetic establishes that the measure (DIFFERENCE I J) decreases according to the well-founded relation LESSP in each induction step of the scheme. Note, however, the inductive instances chosen for X and K. The above induction scheme generates seven new goals: Case 7. (IMPLIES (AND (LESSP J I) (ZEROP K) (LESSP I (ADD1 J)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-K N LST X J K))), which simplifies, using linear arithmetic, to: T. Case 6. (IMPLIES (AND (LESSP J I) (ZEROP K) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST (GET-NTH J LST) (ADD1 J) 1) I (MJRTY-K I LST (GET-NTH J LST) (ADD1 J) 1)) (MJRTY-K N LST (GET-NTH J LST) (ADD1 J) 1)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-K N LST X J K))), which simplifies, unfolding the definitions of ZEROP, EQUAL, MJRTY-CAND, and MJRTY-K, to two new formulas: Case 6.2. (IMPLIES (AND (LESSP J I) (EQUAL K 0) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST (GET-NTH J LST) (ADD1 J) 1) I (MJRTY-K I LST (GET-NTH J LST) (ADD1 J) 1)) (MJRTY-K N LST (GET-NTH J LST) (ADD1 J) 1)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I) (NOT (LESSP J N))) (EQUAL (MJRTY-K N LST (GET-NTH J LST) (ADD1 J) 1) 0)), which again simplifies, using linear arithmetic, to: T. Case 6.1. (IMPLIES (AND (LESSP J I) (NOT (NUMBERP K)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST (GET-NTH J LST) (ADD1 J) 1) I (MJRTY-K I LST (GET-NTH J LST) (ADD1 J) 1)) (MJRTY-K N LST (GET-NTH J LST) (ADD1 J) 1)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (LESSP J N)), which again simplifies, using linear arithmetic, to: T. Case 5. (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (EQUAL X (GET-NTH J LST)) (LESSP I (ADD1 J)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-K N LST X J K))), which simplifies, using linear arithmetic, to: T. Case 4. (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (EQUAL X (GET-NTH J LST)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X (ADD1 J) (ADD1 K)) I (MJRTY-K I LST X (ADD1 J) (ADD1 K))) (MJRTY-K N LST X (ADD1 J) (ADD1 K))) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-K N LST X J K))), which simplifies, opening up the functions ZEROP, MJRTY-CAND, and MJRTY-K, to: (IMPLIES (AND (LESSP J I) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST (GET-NTH J LST) (ADD1 J) (ADD1 K)) I (MJRTY-K I LST (GET-NTH J LST) (ADD1 J) (ADD1 K))) (MJRTY-K N LST (GET-NTH J LST) (ADD1 J) (ADD1 K))) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I) (NOT (LESSP J N))) (EQUAL (MJRTY-K N LST (GET-NTH J LST) (ADD1 J) (ADD1 K)) K)). This again simplifies, using linear arithmetic, to: T. Case 3. (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (NOT (EQUAL X (GET-NTH J LST))) (LESSP I (ADD1 J)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-K N LST X J K))), which simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (NOT (EQUAL X (GET-NTH J LST))) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X (ADD1 J) (SUB1 K)) I (MJRTY-K I LST X (ADD1 J) (SUB1 K))) (MJRTY-K N LST X (ADD1 J) (SUB1 K))) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-K N LST X J K))), which simplifies, opening up the definitions of ZEROP, MJRTY-CAND, and MJRTY-K, to the goal: (IMPLIES (AND (LESSP J I) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL X (GET-NTH J LST))) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X (ADD1 J) (SUB1 K)) I (MJRTY-K I LST X (ADD1 J) (SUB1 K))) (MJRTY-K N LST X (ADD1 J) (SUB1 K))) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I) (NOT (LESSP J N))) (EQUAL (MJRTY-K N LST X (ADD1 J) (SUB1 K)) K)). This again simplifies, using linear arithmetic, to: T. Case 1. (IMPLIES (AND (NOT (LESSP J I)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-K N LST X J K))), which simplifies, using linear arithmetic, to two new conjectures: Case 1.2. (IMPLIES (AND (NOT (NUMBERP J)) (NOT (LESSP J I)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-K N LST X J K))), which again simplifies, unfolding the functions LESSP, EQUAL, NUMBERP, MJRTY-CAND, MJRTY-K, and GET-NTH, to six new conjectures: Case 1.2.6. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (NUMBERP N))) (EQUAL (MJRTY-K N LST X 0 K) K)), which again simplifies, expanding the functions LESSP and MJRTY-K, to: T. Case 1.2.5. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (EQUAL N 0)) (EQUAL (MJRTY-K N LST X 0 K) K)), which again simplifies, rewriting with the lemma MJRTY-K-0, to: T. Case 1.2.4. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP K))) (EQUAL (MJRTY-K N LST X 0 K) (MJRTY-K N LST (GET-NTH J LST) (ADD1 J) 1))), which again simplifies, trivially, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP K))) (EQUAL (MJRTY-K N LST X 0 K) (MJRTY-K N LST (GET-NTH J LST) (ADD1 J) 1))), which further simplifies, applying SUB1-TYPE-RESTRICTION, and unfolding the definition of GET-NTH, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP K))) (EQUAL (MJRTY-K N LST X 0 K) (MJRTY-K N LST (CAR LST) 1 1))), which again simplifies, unfolding the definitions of ADD1, GET-NTH, LESSP, EQUAL, and MJRTY-K, to: T. Case 1.2.3. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (EQUAL N 0)) (NUMBERP N) (EQUAL K 0)) (EQUAL (MJRTY-K N LST X 0 K) (MJRTY-K N LST (GET-NTH J LST) (ADD1 J) 1))), which again simplifies, obviously, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N)) (EQUAL (MJRTY-K N LST X 0 0) (MJRTY-K N LST (GET-NTH J LST) (ADD1 J) 1))), which further simplifies, appealing to the lemma SUB1-TYPE-RESTRICTION, and opening up the definition of GET-NTH, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N)) (EQUAL (MJRTY-K N LST X 0 0) (MJRTY-K N LST (CAR LST) 1 1))). This again simplifies, unfolding the definitions of ADD1, GET-NTH, LESSP, EQUAL, and MJRTY-K, to: T. Case 1.2.2. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL X (CAR LST))) (EQUAL (MJRTY-K N LST X 0 K) (MJRTY-K N LST X (ADD1 J) (ADD1 K)))), which again simplifies, applying the lemma SUB1-TYPE-RESTRICTION, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (MJRTY-K N LST (CAR LST) 0 K) (MJRTY-K N LST (CAR LST) 1 (ADD1 K)))). This again simplifies, unfolding the functions ADD1, GET-NTH, LESSP, EQUAL, and MJRTY-K, to: T. Case 1.2.1. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL X (CAR LST)))) (EQUAL (MJRTY-K N LST X 0 K) (MJRTY-K N LST X (ADD1 J) (SUB1 K)))), which again simplifies, trivially, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL X (CAR LST)))) (EQUAL (MJRTY-K N LST X 0 K) (MJRTY-K N LST X (ADD1 J) (SUB1 K)))), which further simplifies, applying the lemma SUB1-TYPE-RESTRICTION, to the conjecture: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL X (CAR LST)))) (EQUAL (MJRTY-K N LST X 0 K) (MJRTY-K N LST X 1 (SUB1 K)))). However this again simplifies, unfolding the functions ADD1, GET-NTH, LESSP, EQUAL, and MJRTY-K, to: T. Case 1.1. (IMPLIES (AND (NUMBERP J) (NOT (LESSP I I)) (NOT (LESSP N I)) (NOT (LESSP I I)) (NUMBERP I)) (EQUAL (MJRTY-K N LST (MJRTY-CAND I LST X I K) I (MJRTY-K I LST X I K)) (MJRTY-K N LST X I K))), which again simplifies, applying MJRTY-CAND-0 and MJRTY-K-0, to: T. That finishes the proof of *1. Q.E.D. [ 0.0 0.3 0.0 ] MJRTY-K-LEMMA (PROVE-LEMMA MJRTY-CAND-LEMMA (REWRITE) (IMPLIES (AND (LEQ I N) (LEQ J I) (NUMBERP I)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-CAND N LST X J K))) ((ENABLE GET-NTH))) Call the conjecture *1. Let us appeal to the induction principle. The recursive terms in the conjecture suggest eight inductions. They merge into three likely candidate inductions. However, only one is unflawed. We will induct according to the following scheme: (AND (IMPLIES (AND (LESSP J I) (ZEROP K) (p N LST I (GET-NTH J LST) (ADD1 J) 1)) (p N LST I X J K)) (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (EQUAL X (GET-NTH J LST)) (p N LST I X (ADD1 J) (ADD1 K))) (p N LST I X J K)) (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (NOT (EQUAL X (GET-NTH J LST))) (p N LST I X (ADD1 J) (SUB1 K))) (p N LST I X J K)) (IMPLIES (NOT (LESSP J I)) (p N LST I X J K))). Linear arithmetic establishes that the measure (DIFFERENCE I J) decreases according to the well-founded relation LESSP in each induction step of the scheme. Note, however, the inductive instances chosen for X and K. The above induction scheme generates seven new goals: Case 7. (IMPLIES (AND (LESSP J I) (ZEROP K) (LESSP I (ADD1 J)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-CAND N LST X J K))), which simplifies, using linear arithmetic, to: T. Case 6. (IMPLIES (AND (LESSP J I) (ZEROP K) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST (GET-NTH J LST) (ADD1 J) 1) I (MJRTY-K I LST (GET-NTH J LST) (ADD1 J) 1)) (MJRTY-CAND N LST (GET-NTH J LST) (ADD1 J) 1)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-CAND N LST X J K))), which simplifies, unfolding the definitions of ZEROP, EQUAL, MJRTY-CAND, and MJRTY-K, to two new formulas: Case 6.2. (IMPLIES (AND (LESSP J I) (EQUAL K 0) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST (GET-NTH J LST) (ADD1 J) 1) I (MJRTY-K I LST (GET-NTH J LST) (ADD1 J) 1)) (MJRTY-CAND N LST (GET-NTH J LST) (ADD1 J) 1)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I) (NOT (LESSP J N))) (EQUAL (MJRTY-CAND N LST (GET-NTH J LST) (ADD1 J) 1) X)), which again simplifies, using linear arithmetic, to: T. Case 6.1. (IMPLIES (AND (LESSP J I) (NOT (NUMBERP K)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST (GET-NTH J LST) (ADD1 J) 1) I (MJRTY-K I LST (GET-NTH J LST) (ADD1 J) 1)) (MJRTY-CAND N LST (GET-NTH J LST) (ADD1 J) 1)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I) (NOT (LESSP J N))) (EQUAL (MJRTY-CAND N LST (GET-NTH J LST) (ADD1 J) 1) X)), which again simplifies, using linear arithmetic, to: T. Case 5. (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (EQUAL X (GET-NTH J LST)) (LESSP I (ADD1 J)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-CAND N LST X J K))), which simplifies, using linear arithmetic, to: T. Case 4. (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (EQUAL X (GET-NTH J LST)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X (ADD1 J) (ADD1 K)) I (MJRTY-K I LST X (ADD1 J) (ADD1 K))) (MJRTY-CAND N LST X (ADD1 J) (ADD1 K))) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-CAND N LST X J K))), which simplifies, opening up the functions ZEROP, MJRTY-CAND, and MJRTY-K, to: (IMPLIES (AND (LESSP J I) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST (GET-NTH J LST) (ADD1 J) (ADD1 K)) I (MJRTY-K I LST (GET-NTH J LST) (ADD1 J) (ADD1 K))) (MJRTY-CAND N LST (GET-NTH J LST) (ADD1 J) (ADD1 K))) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I) (NOT (LESSP J N))) (EQUAL (MJRTY-CAND N LST (GET-NTH J LST) (ADD1 J) (ADD1 K)) (GET-NTH J LST))). This again simplifies, using linear arithmetic, to: T. Case 3. (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (NOT (EQUAL X (GET-NTH J LST))) (LESSP I (ADD1 J)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-CAND N LST X J K))), which simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (LESSP J I) (NOT (ZEROP K)) (NOT (EQUAL X (GET-NTH J LST))) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X (ADD1 J) (SUB1 K)) I (MJRTY-K I LST X (ADD1 J) (SUB1 K))) (MJRTY-CAND N LST X (ADD1 J) (SUB1 K))) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-CAND N LST X J K))), which simplifies, opening up the definitions of ZEROP, MJRTY-CAND, and MJRTY-K, to the goal: (IMPLIES (AND (LESSP J I) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL X (GET-NTH J LST))) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X (ADD1 J) (SUB1 K)) I (MJRTY-K I LST X (ADD1 J) (SUB1 K))) (MJRTY-CAND N LST X (ADD1 J) (SUB1 K))) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I) (NOT (LESSP J N))) (EQUAL (MJRTY-CAND N LST X (ADD1 J) (SUB1 K)) X)). This again simplifies, using linear arithmetic, to: T. Case 1. (IMPLIES (AND (NOT (LESSP J I)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-CAND N LST X J K))), which simplifies, using linear arithmetic, to two new conjectures: Case 1.2. (IMPLIES (AND (NOT (NUMBERP J)) (NOT (LESSP J I)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X J K) I (MJRTY-K I LST X J K)) (MJRTY-CAND N LST X J K))), which again simplifies, unfolding the functions LESSP, EQUAL, NUMBERP, MJRTY-CAND, MJRTY-K, and GET-NTH, to six new conjectures: Case 1.2.6. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (NUMBERP N))) (EQUAL (MJRTY-CAND N LST X 0 K) X)), which again simplifies, expanding the functions LESSP and MJRTY-CAND, to: T. Case 1.2.5. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (EQUAL N 0)) (EQUAL (MJRTY-CAND N LST X 0 K) X)), which again simplifies, rewriting with the lemma MJRTY-CAND-0, to: T. Case 1.2.4. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP K))) (EQUAL (MJRTY-CAND N LST X 0 K) (MJRTY-CAND N LST (GET-NTH J LST) (ADD1 J) 1))), which again simplifies, trivially, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP K))) (EQUAL (MJRTY-CAND N LST X 0 K) (MJRTY-CAND N LST (GET-NTH J LST) (ADD1 J) 1))), which further simplifies, applying SUB1-TYPE-RESTRICTION, and unfolding the definition of GET-NTH, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP K))) (EQUAL (MJRTY-CAND N LST X 0 K) (MJRTY-CAND N LST (CAR LST) 1 1))), which again simplifies, unfolding the definitions of ADD1, GET-NTH, LESSP, EQUAL, and MJRTY-CAND, to: T. Case 1.2.3. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (EQUAL N 0)) (NUMBERP N) (EQUAL K 0)) (EQUAL (MJRTY-CAND N LST X 0 K) (MJRTY-CAND N LST (GET-NTH J LST) (ADD1 J) 1))), which again simplifies, obviously, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N)) (EQUAL (MJRTY-CAND N LST X 0 0) (MJRTY-CAND N LST (GET-NTH J LST) (ADD1 J) 1))), which further simplifies, appealing to the lemma SUB1-TYPE-RESTRICTION, and opening up the definition of GET-NTH, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N)) (EQUAL (MJRTY-CAND N LST X 0 0) (MJRTY-CAND N LST (CAR LST) 1 1))). This again simplifies, unfolding the definitions of ADD1, GET-NTH, LESSP, EQUAL, and MJRTY-CAND, to: T. Case 1.2.2. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL X (CAR LST))) (EQUAL (MJRTY-CAND N LST X 0 K) (MJRTY-CAND N LST X (ADD1 J) (ADD1 K)))), which again simplifies, applying the lemma SUB1-TYPE-RESTRICTION, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (MJRTY-CAND N LST (CAR LST) 0 K) (MJRTY-CAND N LST (CAR LST) 1 (ADD1 K)))). This again simplifies, unfolding the functions ADD1, GET-NTH, LESSP, EQUAL, and MJRTY-CAND, to: T. Case 1.2.1. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL X (CAR LST)))) (EQUAL (MJRTY-CAND N LST X 0 K) (MJRTY-CAND N LST X (ADD1 J) (SUB1 K)))), which again simplifies, trivially, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL X (CAR LST)))) (EQUAL (MJRTY-CAND N LST X 0 K) (MJRTY-CAND N LST X (ADD1 J) (SUB1 K)))), which further simplifies, applying the lemma SUB1-TYPE-RESTRICTION, to the conjecture: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL X (CAR LST)))) (EQUAL (MJRTY-CAND N LST X 0 K) (MJRTY-CAND N LST X 1 (SUB1 K)))). However this again simplifies, unfolding the functions ADD1, GET-NTH, LESSP, EQUAL, and MJRTY-CAND, to: T. Case 1.1. (IMPLIES (AND (NUMBERP J) (NOT (LESSP I I)) (NOT (LESSP N I)) (NOT (LESSP I I)) (NUMBERP I)) (EQUAL (MJRTY-CAND N LST (MJRTY-CAND I LST X I K) I (MJRTY-K I LST X I K)) (MJRTY-CAND N LST X I K))), which again simplifies, applying MJRTY-CAND-0 and MJRTY-K-0, to: T. That finishes the proof of *1. Q.E.D. [ 0.0 0.1 0.1 ] MJRTY-CAND-LEMMA (PROVE-LEMMA CAND-CNT-LEMMA (REWRITE) (IMPLIES (AND (LEQ I N) (LEQ J I) (NUMBERP I)) (EQUAL (CAND-CNT N LST X I (CAND-CNT I LST X J K)) (CAND-CNT N LST X J K))) ((ENABLE GET-NTH))) Call the conjecture *1. We will try to prove it by induction. There are seven plausible inductions. They merge into three likely candidate inductions. However, only one is unflawed. We will induct according to the following scheme: (AND (IMPLIES (AND (LESSP J I) (EQUAL X (GET-NTH J LST)) (p N LST X I (ADD1 J) (ADD1 K))) (p N LST X I J K)) (IMPLIES (AND (LESSP J I) (NOT (EQUAL X (GET-NTH J LST))) (p N LST X I (ADD1 J) K)) (p N LST X I J K)) (IMPLIES (NOT (LESSP J I)) (p N LST X I J K))). Linear arithmetic establishes that the measure (DIFFERENCE I J) decreases according to the well-founded relation LESSP in each induction step of the scheme. Note, however, the inductive instances chosen for K. The above induction scheme generates five new conjectures: Case 5. (IMPLIES (AND (LESSP J I) (EQUAL X (GET-NTH J LST)) (LESSP I (ADD1 J)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (CAND-CNT N LST X I (CAND-CNT I LST X J K)) (CAND-CNT N LST X J K))), which simplifies, using linear arithmetic, to: T. Case 4. (IMPLIES (AND (LESSP J I) (EQUAL X (GET-NTH J LST)) (EQUAL (CAND-CNT N LST X I (CAND-CNT I LST X (ADD1 J) (ADD1 K))) (CAND-CNT N LST X (ADD1 J) (ADD1 K))) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (CAND-CNT N LST X I (CAND-CNT I LST X J K)) (CAND-CNT N LST X J K))), which simplifies, unfolding the definition of CAND-CNT, to the conjecture: (IMPLIES (AND (LESSP J I) (EQUAL (CAND-CNT N LST (GET-NTH J LST) I (CAND-CNT I LST (GET-NTH J LST) (ADD1 J) (ADD1 K))) (CAND-CNT N LST (GET-NTH J LST) (ADD1 J) (ADD1 K))) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I) (NOT (LESSP J N))) (EQUAL (CAND-CNT N LST (GET-NTH J LST) (ADD1 J) (ADD1 K)) K)). But this again simplifies, using linear arithmetic, to: T. Case 3. (IMPLIES (AND (LESSP J I) (NOT (EQUAL X (GET-NTH J LST))) (LESSP I (ADD1 J)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (CAND-CNT N LST X I (CAND-CNT I LST X J K)) (CAND-CNT N LST X J K))), which simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (LESSP J I) (NOT (EQUAL X (GET-NTH J LST))) (EQUAL (CAND-CNT N LST X I (CAND-CNT I LST X (ADD1 J) K)) (CAND-CNT N LST X (ADD1 J) K)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (CAND-CNT N LST X I (CAND-CNT I LST X J K)) (CAND-CNT N LST X J K))), which simplifies, opening up CAND-CNT, to: (IMPLIES (AND (LESSP J I) (NOT (EQUAL X (GET-NTH J LST))) (EQUAL (CAND-CNT N LST X I (CAND-CNT I LST X (ADD1 J) K)) (CAND-CNT N LST X (ADD1 J) K)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I) (NOT (LESSP J N))) (EQUAL (CAND-CNT N LST X (ADD1 J) K) K)). But this again simplifies, using linear arithmetic, to: T. Case 1. (IMPLIES (AND (NOT (LESSP J I)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (CAND-CNT N LST X I (CAND-CNT I LST X J K)) (CAND-CNT N LST X J K))), which simplifies, using linear arithmetic, to two new formulas: Case 1.2. (IMPLIES (AND (NOT (NUMBERP J)) (NOT (LESSP J I)) (NOT (LESSP N I)) (NOT (LESSP I J)) (NUMBERP I)) (EQUAL (CAND-CNT N LST X I (CAND-CNT I LST X J K)) (CAND-CNT N LST X J K))), which again simplifies, opening up the functions LESSP, EQUAL, NUMBERP, CAND-CNT, and GET-NTH, to four new formulas: Case 1.2.4. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (NUMBERP N))) (EQUAL (CAND-CNT N LST X 0 K) K)), which again simplifies, opening up the functions LESSP and CAND-CNT, to: T. Case 1.2.3. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (EQUAL N 0)) (EQUAL (CAND-CNT N LST X 0 K) K)), which again simplifies, applying the lemma CAND-CNT-0, to: T. Case 1.2.2. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (EQUAL N 0)) (NUMBERP N) (EQUAL X (CAR LST))) (EQUAL (CAND-CNT N LST X 0 K) (CAND-CNT N LST X (ADD1 J) (ADD1 K)))), which again simplifies, rewriting with the lemma SUB1-TYPE-RESTRICTION, to the conjecture: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N)) (EQUAL (CAND-CNT N LST (CAR LST) 0 K) (CAND-CNT N LST (CAR LST) 1 (ADD1 K)))). However this again simplifies, opening up the functions ADD1, GET-NTH, LESSP, EQUAL, and CAND-CNT, to: T. Case 1.2.1. (IMPLIES (AND (NOT (NUMBERP J)) (EQUAL I 0) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL X (CAR LST)))) (EQUAL (CAND-CNT N LST X 0 K) (CAND-CNT N LST X (ADD1 J) K))), which again simplifies, clearly, to: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL X (CAR LST)))) (EQUAL (CAND-CNT N LST X 0 K) (CAND-CNT N LST X (ADD1 J) K))), which further simplifies, appealing to the lemma SUB1-TYPE-RESTRICTION, to the formula: (IMPLIES (AND (NOT (NUMBERP J)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (EQUAL X (CAR LST)))) (EQUAL (CAND-CNT N LST X 0 K) (CAND-CNT N LST X 1 K))). However this again simplifies, opening up the functions ADD1, GET-NTH, LESSP, EQUAL, and CAND-CNT, to: T. Case 1.1. (IMPLIES (AND (NUMBERP J) (NOT (LESSP I I)) (NOT (LESSP N I)) (NOT (LESSP I I)) (NUMBERP I)) (EQUAL (CAND-CNT N LST X I (CAND-CNT I LST X I K)) (CAND-CNT N LST X I K))), which again simplifies, rewriting with the lemma CAND-CNT-0, to: T. That finishes the proof of *1. Q.E.D. [ 0.0 0.0 0.1 ] CAND-CNT-LEMMA (PROVE-LEMMA MJRTY-CAND-REC (REWRITE) (IMPLIES (NUMBERP N) (EQUAL (MJRTY-CAND (ADD1 N) LST X 0 0) (MJRTY-CAND (ADD1 N) LST (MJRTY-CAND N LST X 0 0) N (MJRTY-K N LST X 0 0))))) This formula simplifies, using linear arithmetic and rewriting with MJRTY-CAND-LEMMA, to: T. Q.E.D. [ 0.0 0.0 0.0 ] MJRTY-CAND-REC (PROVE-LEMMA MJRTY-K-REC (REWRITE) (IMPLIES (NUMBERP N) (EQUAL (MJRTY-K (ADD1 N) LST X 0 0) (MJRTY-K (ADD1 N) LST (MJRTY-CAND N LST X 0 0) N (MJRTY-K N LST X 0 0))))) This formula simplifies, using linear arithmetic and rewriting with MJRTY-K-LEMMA, to: T. Q.E.D. [ 0.0 0.0 0.0 ] MJRTY-K-REC (PROVE-LEMMA CAND-CNT-REC (REWRITE) (IMPLIES (NUMBERP N) (EQUAL (CAND-CNT (ADD1 N) LST X 0 0) (CAND-CNT (ADD1 N) LST X N (CAND-CNT N LST X 0 0))))) This conjecture simplifies, using linear arithmetic and appealing to the lemma CAND-CNT-LEMMA, to: T. Q.E.D. [ 0.0 0.0 0.0 ] CAND-CNT-REC (DISABLE MJRTY-CAND-LEMMA) [ 0.0 0.0 0.0 ] MJRTY-CAND-LEMMA-OFF (DISABLE MJRTY-K-LEMMA) [ 0.0 0.0 0.0 ] MJRTY-K-LEMMA-OFF (DISABLE CAND-CNT-LEMMA) [ 0.0 0.0 0.0 ] CAND-CNT-LEMMA-OFF (PROVE-LEMMA MJRTY-LEMMA1 (REWRITE) (NOT (LESSP (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0) (MJRTY-K N LST 0 0 0))) ((INDUCT (PLUS N Y)))) WARNING: Note that the proposed lemma MJRTY-LEMMA1 is to be stored as zero type prescription rules, zero compound recognizer rules, one linear rule, and zero replacement rules. This formula can be simplified, using the abbreviations ZEROP, NOT, OR, and AND, to the following two new conjectures: Case 2. (IMPLIES (ZEROP N) (NOT (LESSP (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0) (MJRTY-K N LST 0 0 0)))). This simplifies, applying MJRTY-CAND-0, CAND-CNT-0, and MJRTY-K-0, and unfolding the definitions of ZEROP, LESSP, MJRTY-CAND, CAND-CNT, and MJRTY-K, to: T. Case 1. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0) (MJRTY-K (SUB1 N) LST 0 0 0)))) (NOT (LESSP (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0) (MJRTY-K N LST 0 0 0)))). Applying the lemma SUB1-ELIM, replace N by (ADD1 X) to eliminate (SUB1 N). We use the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL (ADD1 X) 0)) (NOT (LESSP (CAND-CNT X LST (MJRTY-CAND X LST 0 0 0) 0 0) (MJRTY-K X LST 0 0 0)))) (NOT (LESSP (CAND-CNT (ADD1 X) LST (MJRTY-CAND (ADD1 X) LST 0 0 0) 0 0) (MJRTY-K (ADD1 X) LST 0 0 0)))), which simplifies, applying MJRTY-CAND-1, MJRTY-CAND-REC, CAND-CNT-1, CAND-CNT-REC, MJRTY-K-1, and MJRTY-K-REC, to the following three new goals: Case 1.3. (IMPLIES (AND (NUMBERP X) (NOT (LESSP (CAND-CNT X LST (MJRTY-CAND X LST 0 0 0) 0 0) (MJRTY-K X LST 0 0 0))) (NOT (EQUAL (MJRTY-K X LST 0 0 0) 0)) (EQUAL (MJRTY-CAND X LST 0 0 0) (GET-NTH X LST))) (NOT (LESSP (ADD1 (CAND-CNT X LST (MJRTY-CAND X LST 0 0 0) 0 0)) (ADD1 (MJRTY-K X LST 0 0 0))))). However this again simplifies, using linear arithmetic, to: T. Case 1.2. (IMPLIES (AND (NUMBERP X) (NOT (LESSP (CAND-CNT X LST (MJRTY-CAND X LST 0 0 0) 0 0) (MJRTY-K X LST 0 0 0))) (NOT (EQUAL (MJRTY-K X LST 0 0 0) 0)) (NOT (EQUAL (MJRTY-CAND X LST 0 0 0) (GET-NTH X LST)))) (NOT (LESSP (CAND-CNT X LST (MJRTY-CAND X LST 0 0 0) 0 0) (SUB1 (MJRTY-K X LST 0 0 0))))), which again simplifies, using linear arithmetic, to: T. Case 1.1. (IMPLIES (AND (NUMBERP X) (NOT (LESSP (CAND-CNT X LST (MJRTY-CAND X LST 0 0 0) 0 0) (MJRTY-K X LST 0 0 0))) (EQUAL (MJRTY-K X LST 0 0 0) 0)) (NOT (LESSP (ADD1 (CAND-CNT X LST (GET-NTH X LST) 0 0)) 1))), which again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.0 0.0 0.0 ] MJRTY-LEMMA1 (DEFN MJRTY-LEMMA2-INDUCT (N LST X) (IF (ZEROP N) T (AND (MJRTY-LEMMA2-INDUCT (SUB1 N) LST X) (MJRTY-LEMMA2-INDUCT (SUB1 N) LST (GET-NTH (SUB1 N) LST))))) The lemmas LESSP-SUB1 and COUNT-NUMBERP and the definition of ZEROP establish that the measure (COUNT N) decreases according to the well-founded relation LESSP in each recursive call. Hence, MJRTY-LEMMA2-INDUCT is accepted under the principle of definition. From the definition we can conclude that: (TRUEP (MJRTY-LEMMA2-INDUCT N LST X)) is a theorem. [ 0.0 0.0 0.0 ] MJRTY-LEMMA2-INDUCT (PROVE-LEMMA MJRTY-LEMMA2 (REWRITE) (AND (NOT (LESSP (PLUS N (MJRTY-K N LST 0 0 0)) (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) (IMPLIES (NOT (EQUAL X (MJRTY-CAND N LST 0 0 0))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST X 0 0))))))) ((INDUCT (MJRTY-LEMMA2-INDUCT N LST X)))) WARNING: When the linear lemma MJRTY-LEMMA2 is stored under (MJRTY-K N LST 0 0 0) it contains the free variable X which will be chosen by instantiating the hypothesis (NOT (EQUAL X (MJRTY-CAND N LST 0 0 0))). WARNING: Note that the proposed lemma MJRTY-LEMMA2 is to be stored as zero type prescription rules, zero compound recognizer rules, three linear rules, and zero replacement rules. This formula can be simplified, using the abbreviations ZEROP, NOT, OR, and AND, to the following two new conjectures: Case 2. (IMPLIES (ZEROP N) (AND (NOT (LESSP (PLUS N (MJRTY-K N LST 0 0 0)) (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) (IMPLIES (NOT (EQUAL X (MJRTY-CAND N LST 0 0 0))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST X 0 0)))))))). This simplifies, rewriting with the lemmas MJRTY-K-0, MJRTY-CAND-0, CAND-CNT-0, PLUS-0, and PLUS-COMMUTATIVITY, and opening up the definitions of ZEROP, PLUS, TIMES, LESSP, NOT, IMPLIES, AND, MJRTY-K, MJRTY-CAND, CAND-CNT, and EQUAL, to: T. Case 1. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))) (IMPLIES (NOT (EQUAL (GET-NTH (SUB1 N) LST) (MJRTY-CAND (SUB1 N) LST 0 0 0))) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST (GET-NTH (SUB1 N) LST) 0 0)))))) (IMPLIES (NOT (EQUAL X (MJRTY-CAND (SUB1 N) LST 0 0 0))) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST X 0 0))))))) (AND (NOT (LESSP (PLUS N (MJRTY-K N LST 0 0 0)) (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) (IMPLIES (NOT (EQUAL X (MJRTY-CAND N LST 0 0 0))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST X 0 0)))))))). This simplifies, applying SUB1-ADD1 and TIMES-EQUAL-0, and expanding NOT, IMPLIES, PLUS, NUMBERP, EQUAL, LESSP, and AND, to eight new conjectures: Case 1.8. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))) (EQUAL (GET-NTH (SUB1 N) LST) (MJRTY-CAND (SUB1 N) LST 0 0 0)) (EQUAL X (GET-NTH (SUB1 N) LST)) (NOT (EQUAL (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K N LST 0 0 0)) (SUB1 (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))))), which again simplifies, trivially, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (GET-NTH (SUB1 N) LST) 0 0)))) (EQUAL (GET-NTH (SUB1 N) LST) (MJRTY-CAND (SUB1 N) LST 0 0 0)) (NOT (EQUAL (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K N LST 0 0 0)) (SUB1 (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 Z) to eliminate (SUB1 N). We use the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove: (IMPLIES (AND (NUMBERP Z) (NOT (EQUAL (ADD1 Z) 0)) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (EQUAL (CAND-CNT (ADD1 Z) LST (MJRTY-CAND (ADD1 Z) LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS Z (MJRTY-K (ADD1 Z) LST 0 0 0)) (SUB1 (TIMES 2 (CAND-CNT (ADD1 Z) LST (MJRTY-CAND (ADD1 Z) LST 0 0 0) 0 0)))))), which further simplifies, applying MJRTY-CAND-1, MJRTY-CAND-REC, CAND-CNT-1, CAND-CNT-REC, MJRTY-K-1, MJRTY-K-REC, PLUS-ADD1, TIMES-ADD1, SUB1-ADD1, PLUS-EQUAL-0, and MJRTY-K-0, and opening up SUB1, NUMBERP, EQUAL, PLUS, and LESSP, to the following two new goals: Case 1.8.2. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0))) (NOT (LESSP (SUB1 (PLUS Z (ADD1 (MJRTY-K Z LST 0 0 0)))) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))). But this again simplifies, using linear arithmetic, to: T. Case 1.8.1. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (LESSP (SUB1 (PLUS Z 1)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))), which again simplifies, using linear arithmetic, to: T. Case 1.7. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))) (EQUAL (GET-NTH (SUB1 N) LST) (MJRTY-CAND (SUB1 N) LST 0 0 0)) (EQUAL X (GET-NTH (SUB1 N) LST)) (NOT (EQUAL X (MJRTY-CAND N LST 0 0 0)))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST X 0 0)))))), which again simplifies, clearly, to the new goal: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (GET-NTH (SUB1 N) LST) 0 0)))) (EQUAL (GET-NTH (SUB1 N) LST) (MJRTY-CAND (SUB1 N) LST 0 0 0)) (NOT (EQUAL (GET-NTH (SUB1 N) LST) (MJRTY-CAND N LST 0 0 0)))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST (GET-NTH (SUB1 N) LST) 0 0)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 Z) to eliminate (SUB1 N). We rely upon the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove: (IMPLIES (AND (NUMBERP Z) (NOT (EQUAL (ADD1 Z) 0)) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (EQUAL (GET-NTH Z LST) (MJRTY-CAND (ADD1 Z) LST 0 0 0)))) (NOT (LESSP (ADD1 Z) (PLUS (MJRTY-K (ADD1 Z) LST 0 0 0) (TIMES 2 (CAND-CNT (ADD1 Z) LST (GET-NTH Z LST) 0 0)))))), which further simplifies, applying MJRTY-CAND-1 and MJRTY-CAND-REC, to: T. Case 1.6. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))) (EQUAL (GET-NTH (SUB1 N) LST) (MJRTY-CAND (SUB1 N) LST 0 0 0)) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST X 0 0))))) (NOT (EQUAL (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K N LST 0 0 0)) (SUB1 (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))))). This again simplifies, trivially, to the new conjecture: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (GET-NTH (SUB1 N) LST) 0 0)))) (EQUAL (GET-NTH (SUB1 N) LST) (MJRTY-CAND (SUB1 N) LST 0 0 0)) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST X 0 0))))) (NOT (EQUAL (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K N LST 0 0 0)) (SUB1 (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 Z) to eliminate (SUB1 N). We rely upon the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We thus obtain the new goal: (IMPLIES (AND (NUMBERP Z) (NOT (EQUAL (ADD1 Z) 0)) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (CAND-CNT (ADD1 Z) LST (MJRTY-CAND (ADD1 Z) LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS Z (MJRTY-K (ADD1 Z) LST 0 0 0)) (SUB1 (TIMES 2 (CAND-CNT (ADD1 Z) LST (MJRTY-CAND (ADD1 Z) LST 0 0 0) 0 0)))))), which further simplifies, applying MJRTY-CAND-1, MJRTY-CAND-REC, CAND-CNT-1, CAND-CNT-REC, MJRTY-K-1, MJRTY-K-REC, PLUS-ADD1, TIMES-ADD1, SUB1-ADD1, PLUS-EQUAL-0, and MJRTY-K-0, and expanding SUB1, NUMBERP, EQUAL, PLUS, and LESSP, to the following two new formulas: Case 1.6.2. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0))) (NOT (LESSP (SUB1 (PLUS Z (ADD1 (MJRTY-K Z LST 0 0 0)))) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))). However this again simplifies, using linear arithmetic, to: T. Case 1.6.1. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (LESSP (SUB1 (PLUS Z 1)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))), which again simplifies, using linear arithmetic, to: T. Case 1.5. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))) (EQUAL (GET-NTH (SUB1 N) LST) (MJRTY-CAND (SUB1 N) LST 0 0 0)) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST X 0 0))))) (NOT (EQUAL X (MJRTY-CAND N LST 0 0 0)))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST X 0 0)))))), which again simplifies, clearly, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (GET-NTH (SUB1 N) LST) 0 0)))) (EQUAL (GET-NTH (SUB1 N) LST) (MJRTY-CAND (SUB1 N) LST 0 0 0)) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST X 0 0))))) (NOT (EQUAL X (MJRTY-CAND N LST 0 0 0)))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST X 0 0)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 Z) to eliminate (SUB1 N). We employ the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove: (IMPLIES (AND (NUMBERP Z) (NOT (EQUAL (ADD1 Z) 0)) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL X (MJRTY-CAND (ADD1 Z) LST 0 0 0)))) (NOT (LESSP (ADD1 Z) (PLUS (MJRTY-K (ADD1 Z) LST 0 0 0) (TIMES 2 (CAND-CNT (ADD1 Z) LST X 0 0)))))), which further simplifies, rewriting with MJRTY-CAND-1, MJRTY-CAND-REC, MJRTY-K-1, MJRTY-K-REC, CAND-CNT-1, CAND-CNT-REC, PLUS-COMMUTATIVITY, SUB1-ADD1, PLUS-EQUAL-0, and TIMES-EQUAL-0, and unfolding the functions NUMBERP, EQUAL, and LESSP, to the following three new formulas: Case 1.5.3. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL X (GET-NTH Z LST))) (NOT (EQUAL (CAND-CNT Z LST X 0 0) 0)) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0))) (NOT (LESSP Z (SUB1 (PLUS (TIMES 2 (CAND-CNT Z LST X 0 0)) (ADD1 (MJRTY-K Z LST 0 0 0))))))). This again simplifies, using linear arithmetic, to the conjecture: (IMPLIES (AND (EQUAL (PLUS (TIMES 2 (CAND-CNT Z LST X 0 0)) (ADD1 (MJRTY-K Z LST 0 0 0))) 0) (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL X (GET-NTH Z LST))) (NOT (EQUAL (CAND-CNT Z LST X 0 0) 0)) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0))) (NOT (LESSP Z (SUB1 (PLUS (TIMES 2 (CAND-CNT Z LST X 0 0)) (ADD1 (MJRTY-K Z LST 0 0 0))))))). However this finally simplifies, using linear arithmetic, to: T. Case 1.5.2. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL X (GET-NTH Z LST))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL (ADD1 (MJRTY-K Z LST 0 0 0)) 0))) (NOT (LESSP Z (SUB1 (PLUS (TIMES 2 (CAND-CNT Z LST X 0 0)) (ADD1 (MJRTY-K Z LST 0 0 0))))))), which again simplifies, using linear arithmetic, to the formula: (IMPLIES (AND (EQUAL (PLUS (TIMES 2 (CAND-CNT Z LST X 0 0)) (ADD1 (MJRTY-K Z LST 0 0 0))) 0) (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL X (GET-NTH Z LST))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL (ADD1 (MJRTY-K Z LST 0 0 0)) 0))) (NOT (LESSP Z (SUB1 (PLUS (TIMES 2 (CAND-CNT Z LST X 0 0)) (ADD1 (MJRTY-K Z LST 0 0 0))))))). But this finally simplifies, using linear arithmetic, to: T. Case 1.5.1. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL X (GET-NTH Z LST))) (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (LESSP Z (SUB1 (PLUS (TIMES 2 (CAND-CNT Z LST X 0 0)) 1))))), which again simplifies, using linear arithmetic, to: (IMPLIES (AND (EQUAL (PLUS (TIMES 2 (CAND-CNT Z LST X 0 0)) 1) 0) (NUMBERP Z) (NOT (LESSP (PLUS Z 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)))) (EQUAL (GET-NTH Z LST) (MJRTY-CAND Z LST 0 0 0)) (NOT (LESSP Z (PLUS 0 (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL X (GET-NTH Z LST))) (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (LESSP Z (SUB1 (PLUS (TIMES 2 (CAND-CNT Z LST X 0 0)) 1))))). But this finally simplifies, using linear arithmetic, to: T. Case 1.4. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST (GET-NTH (SUB1 N) LST) 0 0))))) (EQUAL X (MJRTY-CAND (SUB1 N) LST 0 0 0)) (NOT (EQUAL (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K N LST 0 0 0)) (SUB1 (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))))), which again simplifies, obviously, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST (GET-NTH (SUB1 N) LST) 0 0))))) (NOT (EQUAL (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K N LST 0 0 0)) (SUB1 (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 Z) to eliminate (SUB1 N). We rely upon the type restriction lemma noted when SUB1 was introduced to restrict the new variable. This produces: (IMPLIES (AND (NUMBERP Z) (NOT (EQUAL (ADD1 Z) 0)) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (EQUAL (CAND-CNT (ADD1 Z) LST (MJRTY-CAND (ADD1 Z) LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS Z (MJRTY-K (ADD1 Z) LST 0 0 0)) (SUB1 (TIMES 2 (CAND-CNT (ADD1 Z) LST (MJRTY-CAND (ADD1 Z) LST 0 0 0) 0 0)))))), which further simplifies, applying the lemmas MJRTY-CAND-1, MJRTY-CAND-REC, CAND-CNT-1, CAND-CNT-REC, MJRTY-K-1, MJRTY-K-REC, PLUS-ADD1, PLUS-COMMUTATIVITY, TIMES-ADD1, SUB1-ADD1, and PLUS-EQUAL-0, and opening up the definitions of EQUAL, SUB1, NUMBERP, PLUS, and LESSP, to three new formulas: Case 1.4.3. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (EQUAL (MJRTY-K Z LST 0 0 0) 0) (NOT (EQUAL (ADD1 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)) 0))) (NOT (LESSP Z (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))), which again simplifies, using linear arithmetic, to: T. Case 1.4.2. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (NOT (EQUAL (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS Z (SUB1 (MJRTY-K Z LST 0 0 0))) (SUB1 (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))))), which again simplifies, using linear arithmetic, to: (IMPLIES (AND (EQUAL (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)) 0) (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (NOT (EQUAL (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS Z (SUB1 (MJRTY-K Z LST 0 0 0))) (SUB1 (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))))). This finally simplifies, using linear arithmetic, to: T. Case 1.4.1. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST)) (NOT (EQUAL (ADD1 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)) 0))) (NOT (LESSP (SUB1 (PLUS Z (ADD1 (MJRTY-K Z LST 0 0 0)))) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))), which again simplifies, using linear arithmetic, to: T. Case 1.3. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST (GET-NTH (SUB1 N) LST) 0 0))))) (EQUAL X (MJRTY-CAND (SUB1 N) LST 0 0 0)) (NOT (EQUAL X (MJRTY-CAND N LST 0 0 0)))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST X 0 0)))))), which again simplifies, clearly, to the new goal: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST (GET-NTH (SUB1 N) LST) 0 0))))) (NOT (EQUAL (MJRTY-CAND (SUB1 N) LST 0 0 0) (MJRTY-CAND N LST 0 0 0)))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 Z) to eliminate (SUB1 N). We use the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We thus obtain the new formula: (IMPLIES (AND (NUMBERP Z) (NOT (EQUAL (ADD1 Z) 0)) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (MJRTY-CAND (ADD1 Z) LST 0 0 0)))) (NOT (LESSP (ADD1 Z) (PLUS (MJRTY-K (ADD1 Z) LST 0 0 0) (TIMES 2 (CAND-CNT (ADD1 Z) LST (MJRTY-CAND Z LST 0 0 0) 0 0)))))), which further simplifies, rewriting with the lemmas MJRTY-CAND-1, MJRTY-CAND-REC, MJRTY-K-1, MJRTY-K-REC, CAND-CNT-1, CAND-CNT-REC, PLUS-ADD1, and SUB1-ADD1, and unfolding EQUAL and LESSP, to the conjecture: (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (EQUAL (MJRTY-K Z LST 0 0 0) 0) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST)))) (NOT (LESSP Z (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0))))). This again simplifies, using linear arithmetic, to: T. Case 1.2. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST (GET-NTH (SUB1 N) LST) 0 0))))) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST X 0 0))))) (NOT (EQUAL (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K N LST 0 0 0)) (SUB1 (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 Z) to eliminate (SUB1 N). We employ the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We thus obtain: (IMPLIES (AND (NUMBERP Z) (NOT (EQUAL (ADD1 Z) 0)) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (CAND-CNT (ADD1 Z) LST (MJRTY-CAND (ADD1 Z) LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS Z (MJRTY-K (ADD1 Z) LST 0 0 0)) (SUB1 (TIMES 2 (CAND-CNT (ADD1 Z) LST (MJRTY-CAND (ADD1 Z) LST 0 0 0) 0 0)))))), which further simplifies, rewriting with MJRTY-CAND-1, MJRTY-CAND-REC, CAND-CNT-1, CAND-CNT-REC, MJRTY-K-1, MJRTY-K-REC, PLUS-ADD1, PLUS-COMMUTATIVITY, TIMES-ADD1, SUB1-ADD1, and PLUS-EQUAL-0, and unfolding the definitions of EQUAL, SUB1, NUMBERP, PLUS, and LESSP, to the following three new formulas: Case 1.2.3. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (EQUAL (MJRTY-K Z LST 0 0 0) 0) (NOT (EQUAL (ADD1 (CAND-CNT Z LST (GET-NTH Z LST) 0 0)) 0))) (NOT (LESSP Z (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))). But this again simplifies, using linear arithmetic, to: T. Case 1.2.2. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (NOT (EQUAL (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS Z (SUB1 (MJRTY-K Z LST 0 0 0))) (SUB1 (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))))), which again simplifies, using linear arithmetic, to: (IMPLIES (AND (EQUAL (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)) 0) (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (NOT (EQUAL (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0) 0))) (NOT (LESSP (PLUS Z (SUB1 (MJRTY-K Z LST 0 0 0))) (SUB1 (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))))). This again simplifies, using linear arithmetic, to: T. Case 1.2.1. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST)) (NOT (EQUAL (ADD1 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)) 0))) (NOT (LESSP (SUB1 (PLUS Z (ADD1 (MJRTY-K Z LST 0 0 0)))) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))), which again simplifies, using linear arithmetic, to: T. Case 1.1. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (LESSP (PLUS (SUB1 N) (MJRTY-K (SUB1 N) LST 0 0 0)) (TIMES 2 (CAND-CNT (SUB1 N) LST (MJRTY-CAND (SUB1 N) LST 0 0 0) 0 0)))) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST (GET-NTH (SUB1 N) LST) 0 0))))) (NOT (LESSP (SUB1 N) (PLUS (MJRTY-K (SUB1 N) LST 0 0 0) (TIMES 2 (CAND-CNT (SUB1 N) LST X 0 0))))) (NOT (EQUAL X (MJRTY-CAND N LST 0 0 0)))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST X 0 0)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 Z) to eliminate (SUB1 N). We use the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove: (IMPLIES (AND (NUMBERP Z) (NOT (EQUAL (ADD1 Z) 0)) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL X (MJRTY-CAND (ADD1 Z) LST 0 0 0)))) (NOT (LESSP (ADD1 Z) (PLUS (MJRTY-K (ADD1 Z) LST 0 0 0) (TIMES 2 (CAND-CNT (ADD1 Z) LST X 0 0)))))), which further simplifies, rewriting with MJRTY-CAND-1, MJRTY-CAND-REC, MJRTY-K-1, MJRTY-K-REC, CAND-CNT-1, CAND-CNT-REC, SUB1-ADD1, PLUS-EQUAL-0, TIMES-EQUAL-0, and PLUS-ADD1, and unfolding the functions NUMBERP, EQUAL, and LESSP, to the following nine new goals: Case 1.1.9. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (NOT (EQUAL (SUB1 (MJRTY-K Z LST 0 0 0)) 0)) (NOT (EQUAL X (GET-NTH Z LST)))) (NOT (LESSP Z (SUB1 (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))))))). But this again simplifies, using linear arithmetic, to the goal: (IMPLIES (AND (EQUAL (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))) 0) (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (NOT (EQUAL (SUB1 (MJRTY-K Z LST 0 0 0)) 0)) (NOT (EQUAL X (GET-NTH Z LST)))) (NOT (LESSP Z (SUB1 (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))))))). But this again simplifies, using linear arithmetic, to: T. Case 1.1.8. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (NOT (EQUAL X (GET-NTH Z LST))) (NOT (EQUAL (CAND-CNT Z LST X 0 0) 0))) (NOT (LESSP Z (SUB1 (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))))))), which again simplifies, using linear arithmetic, to the conjecture: (IMPLIES (AND (EQUAL (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))) 0) (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (NOT (EQUAL X (GET-NTH Z LST))) (NOT (EQUAL (CAND-CNT Z LST X 0 0) 0))) (NOT (LESSP Z (SUB1 (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))))))). But this again simplifies, using linear arithmetic, to: T. Case 1.1.7. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (NOT (EQUAL (SUB1 (MJRTY-K Z LST 0 0 0)) 0)) (EQUAL X (GET-NTH Z LST))) (NOT (LESSP Z (SUB1 (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (ADD1 (CAND-CNT Z LST X 0 0)))))))), which again simplifies, applying SUB1-OF-1, PLUS-ADD1, and TIMES-ADD1, and opening up the functions SUB1, NUMBERP, EQUAL, and PLUS, to the new formula: (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 1))) (NOT (LESSP Z (SUB1 (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (ADD1 (ADD1 (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))))))), which again simplifies, using linear arithmetic, to: (IMPLIES (AND (EQUAL (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (ADD1 (ADD1 (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) 0) (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 1))) (NOT (LESSP Z (SUB1 (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (ADD1 (ADD1 (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))))))). However this finally simplifies, using linear arithmetic, to: T. Case 1.1.6. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST))) (EQUAL X (GET-NTH Z LST)) (NOT (EQUAL (ADD1 (CAND-CNT Z LST X 0 0)) 0))) (NOT (LESSP Z (SUB1 (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (ADD1 (CAND-CNT Z LST X 0 0)))))))), which again simplifies, applying PLUS-ADD1 and TIMES-ADD1, and opening up the functions SUB1, NUMBERP, EQUAL, and PLUS, to the new goal: (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST)))) (NOT (LESSP Z (SUB1 (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (ADD1 (ADD1 (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))))))), which again simplifies, using linear arithmetic, to: (IMPLIES (AND (EQUAL (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (ADD1 (ADD1 (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) 0) (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST)))) (NOT (LESSP Z (SUB1 (PLUS (SUB1 (MJRTY-K Z LST 0 0 0)) (ADD1 (ADD1 (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))))))). However this finally simplifies, using linear arithmetic, to: T. Case 1.1.5. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST)) (NOT (EQUAL (ADD1 (MJRTY-K Z LST 0 0 0)) 0)) (NOT (EQUAL X (GET-NTH Z LST)))) (NOT (LESSP Z (SUB1 (PLUS (ADD1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))))))), which again simplifies, using linear arithmetic, to: (IMPLIES (AND (EQUAL (PLUS (ADD1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))) 0) (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST)) (NOT (EQUAL (ADD1 (MJRTY-K Z LST 0 0 0)) 0)) (NOT (EQUAL X (GET-NTH Z LST)))) (NOT (LESSP Z (SUB1 (PLUS (ADD1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))))))). But this again simplifies, using linear arithmetic, to: T. Case 1.1.4. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST)) (NOT (EQUAL X (GET-NTH Z LST))) (NOT (EQUAL (CAND-CNT Z LST X 0 0) 0))) (NOT (LESSP Z (SUB1 (PLUS (ADD1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))))))), which again simplifies, using linear arithmetic, to: (IMPLIES (AND (EQUAL (PLUS (ADD1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))) 0) (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST)) (NOT (EQUAL X (GET-NTH Z LST))) (NOT (EQUAL (CAND-CNT Z LST X 0 0) 0))) (NOT (LESSP Z (SUB1 (PLUS (ADD1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST X 0 0))))))). But this again simplifies, using linear arithmetic, to: T. Case 1.1.3. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST)) (NOT (EQUAL (ADD1 (MJRTY-K Z LST 0 0 0)) 0)) (EQUAL X (GET-NTH Z LST))) (NOT (LESSP Z (SUB1 (PLUS (ADD1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (ADD1 (CAND-CNT Z LST X 0 0)))))))), which again simplifies, obviously, to: T. Case 1.1.2. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (NOT (EQUAL (MJRTY-K Z LST 0 0 0) 0)) (NOT (EQUAL X (MJRTY-CAND Z LST 0 0 0))) (EQUAL (MJRTY-CAND Z LST 0 0 0) (GET-NTH Z LST)) (EQUAL X (GET-NTH Z LST)) (NOT (EQUAL (ADD1 (CAND-CNT Z LST X 0 0)) 0))) (NOT (LESSP Z (SUB1 (PLUS (ADD1 (MJRTY-K Z LST 0 0 0)) (TIMES 2 (ADD1 (CAND-CNT Z LST X 0 0)))))))). This again simplifies, clearly, to: T. Case 1.1.1. (IMPLIES (AND (NUMBERP Z) (NOT (LESSP (PLUS Z (MJRTY-K Z LST 0 0 0)) (TIMES 2 (CAND-CNT Z LST (MJRTY-CAND Z LST 0 0 0) 0 0)))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST (GET-NTH Z LST) 0 0))))) (NOT (LESSP Z (PLUS (MJRTY-K Z LST 0 0 0) (TIMES 2 (CAND-CNT Z LST X 0 0))))) (EQUAL (MJRTY-K Z LST 0 0 0) 0) (NOT (EQUAL X (GET-NTH Z LST)))) (NOT (LESSP Z (TIMES 2 (CAND-CNT Z LST X 0 0))))). However this again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.0 0.8 0.1 ] MJRTY-LEMMA2 (DISABLE MJRTY-CAND-REC) [ 0.0 0.0 0.0 ] MJRTY-CAND-REC-OFF (DISABLE MJRTY-K-REC) [ 0.0 0.0 0.0 ] MJRTY-K-REC-OFF (DISABLE CAND-CNT-REC) [ 0.0 0.0 0.0 ] CAND-CNT-REC-OFF (PROVE-LEMMA MJRTY-THM1 (REWRITE) (IMPLIES (MJRTY-P N LST 0 0 0) (LESSP (QUOTIENT N 2) (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) WARNING: Note that the proposed lemma MJRTY-THM1 is to be stored as zero type prescription rules, zero compound recognizer rules, one linear rule, and zero replacement rules. This formula can be simplified, using the abbreviations MJRTY-P and IMPLIES, to: (IMPLIES (AND (NOT (EQUAL (MJRTY-K N LST 0 0 0) 0)) (NUMBERP (MJRTY-K N LST 0 0 0)) (IF (LESSP (QUOTIENT N 2) (MJRTY-K N LST 0 0 0)) T (LESSP (QUOTIENT N 2) (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) (LESSP (QUOTIENT N 2) (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0))), which simplifies, appealing to the lemma QUOTIENT-TIMES-LESSP, and unfolding EQUAL and NUMBERP, to the conjecture: (IMPLIES (AND (NOT (EQUAL (MJRTY-K N LST 0 0 0) 0)) (LESSP N (TIMES 2 (MJRTY-K N LST 0 0 0)))) (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))). But this again simplifies, using linear arithmetic and rewriting with the lemma MJRTY-LEMMA1, to: T. Q.E.D. [ 0.0 0.0 0.0 ] MJRTY-THM1 (PROVE-LEMMA MJRTY-THM2 (REWRITE) (IMPLIES (NOT (MJRTY-P N LST 0 0 0)) (NOT (LESSP (QUOTIENT N 2) (CAND-CNT N LST X 0 0)))) ((USE (MJRTY-LEMMA2)))) WARNING: Note that the proposed lemma MJRTY-THM2 is to be stored as zero type prescription rules, zero compound recognizer rules, one linear rule, and zero replacement rules. This formula simplifies, applying QUOTIENT-TIMES-LESSP, and opening up the functions NOT, IMPLIES, NUMBERP, EQUAL, and MJRTY-P, to the following three new formulas: Case 3. (IMPLIES (AND (NOT (LESSP (PLUS N (MJRTY-K N LST 0 0 0)) (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) (EQUAL X (MJRTY-CAND N LST 0 0 0)) (EQUAL (MJRTY-K N LST 0 0 0) 0)) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST X 0 0))))). But this again simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (NOT (LESSP (PLUS N (MJRTY-K N LST 0 0 0)) (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST X 0 0))))) (EQUAL (MJRTY-K N LST 0 0 0) 0)) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST X 0 0))))), which again simplifies, using linear arithmetic, to: T. Case 1. (IMPLIES (AND (NOT (LESSP (PLUS N (MJRTY-K N LST 0 0 0)) (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0)))) (NOT (LESSP N (PLUS (MJRTY-K N LST 0 0 0) (TIMES 2 (CAND-CNT N LST X 0 0))))) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST 0 0 0)))) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST (MJRTY-CAND N LST 0 0 0) 0 0))))) (NOT (LESSP N (TIMES 2 (CAND-CNT N LST X 0 0))))), which again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.0 0.1 0.0 ] MJRTY-THM2 (PROVE-LEMMA MJRTY-T-CROCK (REWRITE) (EQUAL (TIMES Z (DIFFERENCE (SUB1 X) Y)) (DIFFERENCE (TIMES Z (DIFFERENCE X Y)) Z))) WARNING: the previously added lemma, TIMES-COMMUTATIVITY, could be applied whenever the newly proposed MJRTY-T-CROCK could! . Appealing to the lemma SUB1-ELIM, we now replace X by (ADD1 V) to eliminate (SUB1 X). We employ the type restriction lemma noted when SUB1 was introduced to constrain the new variable. The result is three new formulas: Case 3. (IMPLIES (EQUAL X 0) (EQUAL (TIMES Z (DIFFERENCE (SUB1 X) Y)) (DIFFERENCE (TIMES Z (DIFFERENCE X Y)) Z))), which simplifies, using linear arithmetic, appealing to the lemmas DIFFERENCE-0, TIMES-ZERO, and TIMES-COMMUTATIVITY, and opening up the definitions of SUB1, OR, ZEROP, and EQUAL, to: T. Case 2. (IMPLIES (NOT (NUMBERP X)) (EQUAL (TIMES Z (DIFFERENCE (SUB1 X) Y)) (DIFFERENCE (TIMES Z (DIFFERENCE X Y)) Z))), which simplifies, using linear arithmetic, applying the lemmas SUB1-NNUMBERP, DIFFERENCE-0, TIMES-ZERO, and TIMES-COMMUTATIVITY, and expanding the definitions of OR, ZEROP, and EQUAL, to: T. Case 1. (IMPLIES (AND (NUMBERP V) (NOT (EQUAL (ADD1 V) 0))) (EQUAL (TIMES Z (DIFFERENCE V Y)) (DIFFERENCE (TIMES Z (DIFFERENCE (ADD1 V) Y)) Z))), which simplifies, applying SUB1-ADD1, and opening up DIFFERENCE, to the following three new goals: Case 1.3. (IMPLIES (AND (NUMBERP V) (NOT (EQUAL Y 0)) (NUMBERP Y)) (EQUAL (TIMES Z (DIFFERENCE V Y)) (DIFFERENCE (TIMES Z (DIFFERENCE V (SUB1 Y))) Z))). Appealing to the lemma SUB1-ELIM, we now replace Y by (ADD1 W) to eliminate (SUB1 Y). We employ the type restriction lemma noted when SUB1 was introduced to constrain the new variable. We must thus prove: (IMPLIES (AND (NUMBERP W) (NUMBERP V) (NOT (EQUAL (ADD1 W) 0))) (EQUAL (TIMES Z (DIFFERENCE V (ADD1 W))) (DIFFERENCE (TIMES Z (DIFFERENCE V W)) Z))). This further simplifies, rewriting with SUB1-ADD1, and opening up the definition of DIFFERENCE, to the following two new conjectures: Case 1.3.2. (IMPLIES (AND (NUMBERP W) (NUMBERP V) (NOT (EQUAL V 0))) (EQUAL (TIMES Z (DIFFERENCE (SUB1 V) W)) (DIFFERENCE (TIMES Z (DIFFERENCE V W)) Z))), which we would usually push and work on later by induction. But if we must use induction to prove the input conjecture, we prefer to induct on the original formulation of the problem. Thus we will disregard all that we have previously done, give the name *1 to the original input, and work on it. So now let us consider: (EQUAL (TIMES Z (DIFFERENCE (SUB1 X) Y)) (DIFFERENCE (TIMES Z (DIFFERENCE X Y)) Z)), which we named *1 above. We will appeal to induction. Three inductions are suggested by terms in the conjecture. However, they merge into one likely candidate induction. We will induct according to the following scheme: (AND (IMPLIES (ZEROP (SUB1 X)) (p Z X Y)) (IMPLIES (AND (NOT (ZEROP (SUB1 X))) (ZEROP Y)) (p Z X Y)) (IMPLIES (AND (NOT (ZEROP (SUB1 X))) (NOT (ZEROP Y)) (p Z (SUB1 X) (SUB1 Y))) (p Z X Y))). Linear arithmetic, the lemma COUNT-NUMBERP, and the definition of ZEROP can be used to show that the measure (COUNT Y) decreases according to the well-founded relation LESSP in each induction step of the scheme. Note, however, the inductive instance chosen for X. The above induction scheme produces three new goals: Case 3. (IMPLIES (ZEROP (SUB1 X)) (EQUAL (TIMES Z (DIFFERENCE (SUB1 X) Y)) (DIFFERENCE (TIMES Z (DIFFERENCE X Y)) Z))), which simplifies, using linear arithmetic, applying the lemmas SUB1-OF-1, DIFFERENCE-0, TIMES-ZERO, TIMES-COMMUTATIVITY, SUB1-NNUMBERP, CORRECTNESS-OF-CANCEL-LESSP-TIMES, and DIFFERENCE=0, and expanding the definitions of ZEROP, SUB1, OR, EQUAL, LESSP, NUMBERP, DIFFERENCE, NOT, FIX, and AND, to three new goals: Case 3.3. (IMPLIES (AND (EQUAL X 1) (NOT (EQUAL Z 0)) (NUMBERP Z) (NOT (NUMBERP Y))) (NOT (LESSP 1 1))), which again simplifies, using linear arithmetic, to: T. Case 3.2. (IMPLIES (AND (EQUAL X 1) (NOT (EQUAL Z 0)) (NUMBERP Z) (EQUAL Y 0)) (NOT (LESSP 1 1))), which again simplifies, using linear arithmetic, to: T. Case 3.1. (IMPLIES (AND (EQUAL X 1) (NOT (EQUAL Z 0)) (NUMBERP Z) (NOT (EQUAL Y 0)) (NUMBERP Y)) (NOT (LESSP 1 0))), which again simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (NOT (ZEROP (SUB1 X))) (ZEROP Y)) (EQUAL (TIMES Z (DIFFERENCE (SUB1 X) Y)) (DIFFERENCE (TIMES Z (DIFFERENCE X Y)) Z))), which simplifies, rewriting with SUB1-OF-1 and TIMES-COMMUTATIVITY, and unfolding ZEROP, EQUAL, and DIFFERENCE, to the following two new formulas: Case 2.2. (IMPLIES (AND (NOT (EQUAL X 0)) (NUMBERP X) (NOT (EQUAL X 1)) (EQUAL Y 0)) (EQUAL (TIMES Z (SUB1 X)) (DIFFERENCE (TIMES X Z) Z))). This again simplifies, clearly, to: (IMPLIES (AND (NOT (EQUAL X 0)) (NUMBERP X) (NOT (EQUAL X 1))) (EQUAL (TIMES Z (SUB1 X)) (DIFFERENCE (TIMES X Z) Z))). Applying the lemma SUB1-ELIM, replace X by (ADD1 V) to eliminate (SUB1 X). We employ the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove: (IMPLIES (AND (NUMBERP V) (NOT (EQUAL (ADD1 V) 0)) (NOT (EQUAL (ADD1 V) 1))) (EQUAL (TIMES Z V) (DIFFERENCE (TIMES (ADD1 V) Z) Z))), which further simplifies, rewriting with ADD1-EQUAL, TIMES-COMMUTATIVITY, TIMES-ADD1, and CORRECTNESS-OF-CANCEL-DIFFERENCE-PLUS, and unfolding the functions NUMBERP and FIX, to: T. Case 2.1. (IMPLIES (AND (NOT (EQUAL X 0)) (NUMBERP X) (NOT (EQUAL X 1)) (NOT (NUMBERP Y))) (EQUAL (TIMES Z (SUB1 X)) (DIFFERENCE (TIMES X Z) Z))). Appealing to the lemma SUB1-ELIM, we now replace X by (ADD1 V) to eliminate (SUB1 X). We employ the type restriction lemma noted when SUB1 was introduced to constrain the new variable. We must thus prove the conjecture: (IMPLIES (AND (NUMBERP V) (NOT (EQUAL (ADD1 V) 0)) (NOT (EQUAL (ADD1 V) 1)) (NOT (NUMBERP Y))) (EQUAL (TIMES Z V) (DIFFERENCE (TIMES (ADD1 V) Z) Z))). However this further simplifies, applying ADD1-EQUAL, TIMES-COMMUTATIVITY, TIMES-ADD1, and CORRECTNESS-OF-CANCEL-DIFFERENCE-PLUS, and unfolding the functions NUMBERP and FIX, to: T. Case 1. (IMPLIES (AND (NOT (ZEROP (SUB1 X))) (NOT (ZEROP Y)) (EQUAL (TIMES Z (DIFFERENCE (SUB1 (SUB1 X)) (SUB1 Y))) (DIFFERENCE (TIMES Z (DIFFERENCE (SUB1 X) (SUB1 Y))) Z))) (EQUAL (TIMES Z (DIFFERENCE (SUB1 X) Y)) (DIFFERENCE (TIMES Z (DIFFERENCE X Y)) Z))). This simplifies, applying SUB1-OF-1, and opening up the definitions of ZEROP and DIFFERENCE, to: T. That finishes the proof of *1. Q.E.D. [ 0.0 0.2 0.0 ] MJRTY-T-CROCK (PROVE-LEMMA MJRTY-CAND-T-0 (REWRITE) (AND (EQUAL (MJRTY-CAND-T A 0 LST CAND I K) (IF (EQUAL CAND (GET-NTH 0 LST)) 18 17)) (EQUAL (MJRTY-CAND-T A 1 LST CAND 1 K) (IF (EQUAL CAND (GET-NTH 0 LST)) 18 17)))) WARNING: Note that the proposed lemma MJRTY-CAND-T-0 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and two replacement rules. This formula can be simplified, using the abbreviation AND, to the following two new goals: Case 2. (EQUAL (MJRTY-CAND-T A 0 LST CAND I K) (IF (EQUAL CAND (GET-NTH 0 LST)) 18 17)). This simplifies, unfolding the definitions of LESSP, EQUAL, and MJRTY-CAND-T, to: T. Case 1. (EQUAL (MJRTY-CAND-T A 1 LST CAND 1 K) (IF (EQUAL CAND (GET-NTH 0 LST)) 18 17)). This simplifies, opening up LESSP and MJRTY-CAND-T, to: T. Q.E.D. [ 0.0 0.0 0.0 ] MJRTY-CAND-T-0 (PROVE-LEMMA MJRTY-CAND-T-1 (REWRITE) (EQUAL (MJRTY-CAND-T A 1 LST CAND I K) (IF (ZEROP I) (IF (ZEROP K) 26 (IF (EQUAL CAND (GET-NTH I LST)) (IF (EQUAL CAND (GET-NTH 0 LST)) 27 26) (IF (EQUAL CAND (GET-NTH 0 LST)) 26 25))) (IF (EQUAL CAND (GET-NTH 0 LST)) 18 17))) ((EXPAND (MJRTY-CAND-T A 1 LST CAND I K)) (ENABLE GET-NTH-0))) WARNING: the newly proposed lemma, MJRTY-CAND-T-1, could be applied whenever the previously added lemma MJRTY-CAND-T-0 could. This formula simplifies, applying LESSP-OF-1, and opening up the definitions of MJRTY-CAND-T and ZEROP, to the following 16 new conjectures: Case 16.(IMPLIES (AND (NOT (NUMBERP I)) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL CAND (GET-NTH 0 LST))) (EQUAL (SPLUS 8 18) 26)). This again simplifies, rewriting with GET-NTH-0, to: T. Case 15.(IMPLIES (AND (NOT (NUMBERP I)) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (EQUAL (SPLUS 8 17) 25)). This again simplifies, rewriting with GET-NTH-0, and unfolding the definitions of SPLUS and EQUAL, to: T. Case 14.(IMPLIES (AND (NOT (NUMBERP I)) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL CAND (GET-NTH I LST)) (EQUAL CAND (GET-NTH 0 LST))) (EQUAL (SPLUS 9 18) 27)). This again simplifies, applying the lemma GET-NTH-0, and expanding the definitions of SPLUS and EQUAL, to: T. Case 13.(IMPLIES (AND (NOT (NUMBERP I)) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL CAND (GET-NTH I LST)) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (EQUAL (SPLUS 9 17) 26)), which again simplifies, rewriting with GET-NTH-0, to: T. Case 12.(IMPLIES (AND (NOT (NUMBERP I)) (NOT (NUMBERP K)) (EQUAL (GET-NTH I LST) (GET-NTH 0 LST))) (EQUAL (SPLUS 8 18) 26)). This again simplifies, rewriting with GET-NTH-0, and expanding the functions SPLUS and EQUAL, to: T. Case 11.(IMPLIES (AND (NOT (NUMBERP I)) (NOT (NUMBERP K)) (NOT (EQUAL (GET-NTH I LST) (GET-NTH 0 LST)))) (EQUAL (SPLUS 8 17) 26)). This again simplifies, applying GET-NTH-0, to: T. Case 10.(IMPLIES (AND (NOT (NUMBERP I)) (EQUAL K 0) (NOT (EQUAL (GET-NTH I LST) (GET-NTH 0 LST)))) (EQUAL (SPLUS 8 17) 26)). However this again simplifies, applying GET-NTH-0, to: T. Case 9. (IMPLIES (AND (NOT (NUMBERP I)) (EQUAL K 0) (EQUAL (GET-NTH I LST) (GET-NTH 0 LST))) (EQUAL (SPLUS 8 18) 26)). But this again simplifies, applying GET-NTH-0, and opening up the functions SPLUS and EQUAL, to: T. Case 8. (IMPLIES (AND (EQUAL I 0) (NOT (NUMBERP K)) (NOT (EQUAL (GET-NTH I LST) (GET-NTH 0 LST)))) (EQUAL (SPLUS 8 17) 26)). This again simplifies, trivially, to: T. Case 7. (IMPLIES (AND (EQUAL I 0) (EQUAL K 0) (NOT (EQUAL (GET-NTH I LST) (GET-NTH 0 LST)))) (EQUAL (SPLUS 8 17) 26)). This again simplifies, clearly, to: T. Case 6. (IMPLIES (AND (EQUAL I 0) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL CAND (GET-NTH I LST)) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (EQUAL (SPLUS 9 17) 26)). This again simplifies, clearly, to: T. Case 5. (IMPLIES (AND (EQUAL I 0) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL CAND (GET-NTH I LST)) (EQUAL CAND (GET-NTH 0 LST))) (EQUAL (SPLUS 9 18) 27)). But this again simplifies, unfolding the functions SPLUS and EQUAL, to: T. Case 4. (IMPLIES (AND (EQUAL I 0) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (EQUAL (SPLUS 8 17) 25)), which again simplifies, unfolding the definitions of SPLUS and EQUAL, to: T. Case 3. (IMPLIES (AND (EQUAL I 0) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL CAND (GET-NTH 0 LST))) (EQUAL (SPLUS 8 18) 26)), which again simplifies, trivially, to: T. Case 2. (IMPLIES (AND (EQUAL I 0) (NOT (NUMBERP K)) (EQUAL (GET-NTH I LST) (GET-NTH 0 LST))) (EQUAL (SPLUS 8 18) 26)). This again simplifies, expanding the definitions of SPLUS and EQUAL, to: T. Case 1. (IMPLIES (AND (EQUAL I 0) (EQUAL K 0) (EQUAL (GET-NTH I LST) (GET-NTH 0 LST))) (EQUAL (SPLUS 8 18) 26)), which again simplifies, unfolding SPLUS and EQUAL, to: T. Q.E.D. [ 0.0 0.0 0.0 ] MJRTY-CAND-T-1 (PROVE-LEMMA MJRTY-CAND-T-UBOUND (REWRITE) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (MJRTY-CAND-T A N LST CAND I K))) ((ENABLE SPLUS TIMES) (EXPAND (MJRTY-CAND-T A 1 LST CAND I K)))) WARNING: Note that the proposed lemma MJRTY-CAND-T-UBOUND is to be stored as zero type prescription rules, zero compound recognizer rules, one linear rule, and zero replacement rules. Give the conjecture the name *1. We will appeal to induction. Three inductions are suggested by terms in the conjecture. They merge into two likely candidate inductions. However, only one is unflawed. We will induct according to the following scheme: (AND (IMPLIES (AND (LESSP I N) (ZEROP K) (p N (ADD1 I) A LST (GET-NTH I LST) 1)) (p N I A LST CAND K)) (IMPLIES (AND (LESSP I N) (NOT (ZEROP K)) (EQUAL CAND (GET-NTH I LST)) (p N (ADD1 I) A LST CAND (ADD1 K))) (p N I A LST CAND K)) (IMPLIES (AND (LESSP I N) (NOT (ZEROP K)) (NOT (EQUAL CAND (GET-NTH I LST))) (p N (ADD1 I) A LST CAND (SUB1 K))) (p N I A LST CAND K)) (IMPLIES (AND (NOT (LESSP I N)) (EQUAL CAND (GET-NTH 0 LST))) (p N I A LST CAND K)) (IMPLIES (AND (NOT (LESSP I N)) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (p N I A LST CAND K))). Linear arithmetic can be used to establish that the measure (DIFFERENCE N I) decreases according to the well-founded relation LESSP in each induction step of the scheme. Note, however, the inductive instances chosen for CAND and K. The above induction scheme leads to five new goals: Case 5. (IMPLIES (AND (LESSP I N) (ZEROP K) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N (ADD1 I)))) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (MJRTY-CAND-T A N LST CAND I K)))), which simplifies, using linear arithmetic, rewriting with SUB1-ADD1, DIFFERENCE-0, and MJRTY-CAND-T-0, and opening up the definitions of ZEROP, DIFFERENCE, SPLUS, EQUAL, LESSP, MJRTY-CAND-T, TIMES, and PLUS, to the following 12 new goals: Case 5.12. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE (SUB1 N) 0))) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). But this again simplifies, applying SUB1-OF-1, and unfolding the functions LESSP, EQUAL, DIFFERENCE, TIMES, and PLUS, to the following two new conjectures: Case 5.12.2. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 18 (TIMES 9 (SUB1 N))) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). However this further simplifies, rewriting with SUB1-TYPE-RESTRICTION, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 18 (TIMES 9 (SUB1 N))) (MJRTY-CAND-T A N LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) 1 1))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 X) to eliminate (SUB1 N). We rely upon the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove the new goal: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL (ADD1 X) 0)) (NOT (NUMBERP I)) (NOT (EQUAL (ADD1 X) 1)) (NOT (LESSP (PLUS 18 (TIMES 9 X)) (MJRTY-CAND-T A (ADD1 X) LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 (ADD1 X))) (PLUS 8 (MJRTY-CAND-T A (ADD1 X) LST (GET-NTH I LST) 1 1))))), which further simplifies, rewriting with ADD1-EQUAL, TIMES-ADD1, and PLUS-COMMUTATIVITY1, and unfolding the function NUMBERP, to: (IMPLIES (AND (NUMBERP X) (NOT (NUMBERP I)) (NOT (EQUAL X 0)) (NOT (LESSP (PLUS 18 (TIMES 9 X)) (MJRTY-CAND-T A (ADD1 X) LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 9 18 (TIMES 9 X)) (PLUS 8 (MJRTY-CAND-T A (ADD1 X) LST (GET-NTH I LST) 1 1))))), which finally simplifies, using linear arithmetic, to: T. Case 5.12.1. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (EQUAL N 1) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP 27 (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))), which again simplifies, rewriting with SUB1-TYPE-RESTRICTION and MJRTY-CAND-T-1, and unfolding EQUAL, NUMBERP, TIMES, PLUS, and LESSP, to: T. Case 5.11. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE (SUB1 N) I))) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). This again simplifies, rewriting with the lemmas MJRTY-T-CROCK, DIFFERENCE=0, CORRECTNESS-OF-CANCEL-LESSP-TIMES, and DIFFERENCE-PLUS2, and expanding AND, NOT, and ZEROP, to: (IMPLIES (AND (LESSP I N) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). But this again simplifies, using linear arithmetic, to the formula: (IMPLIES (AND (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (LESSP I N) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). This again simplifies, using linear arithmetic, to: T. Case 5.10. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (EQUAL N 0) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (NOT (LESSP 18 17))), which again simplifies, using linear arithmetic, to: T. Case 5.9. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (EQUAL N 0) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (EQUAL CAND (GET-NTH 0 LST))) (NOT (LESSP 18 18))), which again simplifies, using linear arithmetic, to: T. Case 5.8. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (NOT (LESSP 18 17))), which again simplifies, using linear arithmetic, to: T. Case 5.7. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (EQUAL CAND (GET-NTH 0 LST))) (NOT (LESSP 18 18))), which again simplifies, using linear arithmetic, to: T. Case 5.6. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE (SUB1 N) 0))) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))), which again simplifies, applying SUB1-OF-1, and unfolding LESSP, EQUAL, DIFFERENCE, TIMES, and PLUS, to the following two new conjectures: Case 5.6.2. (IMPLIES (AND (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 18 (TIMES 9 (SUB1 N))) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). This further simplifies, rewriting with SUB1-TYPE-RESTRICTION, to: (IMPLIES (AND (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 18 (TIMES 9 (SUB1 N))) (MJRTY-CAND-T A N LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) 1 1))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 X) to eliminate (SUB1 N). We employ the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove: (IMPLIES (AND (NUMBERP X) (NOT (NUMBERP K)) (NOT (EQUAL (ADD1 X) 0)) (NOT (NUMBERP I)) (NOT (EQUAL (ADD1 X) 1)) (NOT (LESSP (PLUS 18 (TIMES 9 X)) (MJRTY-CAND-T A (ADD1 X) LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 (ADD1 X))) (PLUS 8 (MJRTY-CAND-T A (ADD1 X) LST (GET-NTH I LST) 1 1))))), which further simplifies, appealing to the lemmas ADD1-EQUAL, TIMES-ADD1, and PLUS-COMMUTATIVITY1, and unfolding the definition of NUMBERP, to: (IMPLIES (AND (NUMBERP X) (NOT (NUMBERP K)) (NOT (NUMBERP I)) (NOT (EQUAL X 0)) (NOT (LESSP (PLUS 18 (TIMES 9 X)) (MJRTY-CAND-T A (ADD1 X) LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 9 18 (TIMES 9 X)) (PLUS 8 (MJRTY-CAND-T A (ADD1 X) LST (GET-NTH I LST) 1 1))))). This finally simplifies, using linear arithmetic, to: T. Case 5.6.1. (IMPLIES (AND (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (EQUAL N 1) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP 27 (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))), which again simplifies, rewriting with the lemmas SUB1-TYPE-RESTRICTION and MJRTY-CAND-T-1, and unfolding the functions EQUAL, NUMBERP, TIMES, PLUS, and LESSP, to: T. Case 5.5. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE (SUB1 N) I))) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))), which again simplifies, applying MJRTY-T-CROCK, DIFFERENCE=0, CORRECTNESS-OF-CANCEL-LESSP-TIMES, and DIFFERENCE-PLUS2, and expanding the functions AND, NOT, and ZEROP, to the new conjecture: (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))), which again simplifies, using linear arithmetic, to: (IMPLIES (AND (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (LESSP I N) (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). This again simplifies, using linear arithmetic, to: T. Case 5.4. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (EQUAL N 0) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (NOT (LESSP 18 17))), which again simplifies, using linear arithmetic, to: T. Case 5.3. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (EQUAL N 0) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (EQUAL CAND (GET-NTH 0 LST))) (NOT (LESSP 18 18))), which again simplifies, using linear arithmetic, to: T. Case 5.2. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (NOT (LESSP 18 17))), which again simplifies, using linear arithmetic, to: T. Case 5.1. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) 1))) (EQUAL CAND (GET-NTH 0 LST))) (NOT (LESSP 18 18))), which again simplifies, using linear arithmetic, to: T. Case 4. (IMPLIES (AND (LESSP I N) (NOT (ZEROP K)) (EQUAL CAND (GET-NTH I LST)) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N (ADD1 I)))) (MJRTY-CAND-T A N LST CAND (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (MJRTY-CAND-T A N LST CAND I K)))), which simplifies, using linear arithmetic, rewriting with SUB1-ADD1, DIFFERENCE-0, and MJRTY-CAND-T-0, and expanding the definitions of ZEROP, DIFFERENCE, SPLUS, MJRTY-CAND-T, TIMES, PLUS, and LESSP, to the following six new conjectures: Case 4.6. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE (SUB1 N) 0))) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (MJRTY-CAND-T A N LST (GET-NTH I LST) I K)))). This again simplifies, rewriting with SUB1-OF-1, SUB1-TYPE-RESTRICTION, and MJRTY-CAND-T-1, and expanding the definitions of LESSP, EQUAL, DIFFERENCE, TIMES, and PLUS, to the following three new formulas: Case 4.6.3. (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 18 (TIMES 9 (SUB1 N))) (MJRTY-CAND-T A N LST (GET-NTH I LST) 1 (ADD1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (MJRTY-CAND-T A N LST (GET-NTH I LST) I K)))). This again simplifies, applying SUB1-TYPE-RESTRICTION, and opening up SPLUS, LESSP, and MJRTY-CAND-T, to: (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 18 (TIMES 9 (SUB1 N))) (MJRTY-CAND-T A N LST (GET-NTH I LST) 1 (ADD1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (PLUS 9 (MJRTY-CAND-T A N LST (GET-NTH I LST) 1 (ADD1 K)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 X) to eliminate (SUB1 N). We employ the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We thus obtain: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL (ADD1 X) 0)) (NOT (NUMBERP I)) (NOT (EQUAL (ADD1 X) 1)) (NOT (LESSP (PLUS 18 (TIMES 9 X)) (MJRTY-CAND-T A (ADD1 X) LST (GET-NTH I LST) 1 (ADD1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 (ADD1 X))) (PLUS 9 (MJRTY-CAND-T A (ADD1 X) LST (GET-NTH I LST) 1 (ADD1 K)))))), which further simplifies, applying the lemmas ADD1-EQUAL, TIMES-ADD1, PLUS-COMMUTATIVITY1, and CORRECTNESS-OF-CANCEL-LESSP-PLUS, and unfolding the functions NUMBERP and FIX, to: T. Case 4.6.2. (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (EQUAL N 1) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) 1 (ADD1 K)))) (NOT (EQUAL (GET-NTH I LST) (GET-NTH 0 LST)))) (NOT (LESSP 27 26))), which again simplifies, using linear arithmetic, to: T. Case 4.6.1. (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (EQUAL N 1) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) 1 (ADD1 K)))) (EQUAL (GET-NTH I LST) (GET-NTH 0 LST))) (NOT (LESSP 27 27))), which again simplifies, using linear arithmetic, to: T. Case 4.5. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE (SUB1 N) I))) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 9 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))))), which again simplifies, rewriting with the lemmas MJRTY-T-CROCK, DIFFERENCE=0, CORRECTNESS-OF-CANCEL-LESSP-TIMES, and DIFFERENCE-PLUS2, and opening up the functions AND, NOT, and ZEROP, to the conjecture: (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 9 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))))). This again simplifies, using linear arithmetic, to the formula: (IMPLIES (AND (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 9 (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))))). This again simplifies, using linear arithmetic, to: T. Case 4.4. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL N 0) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (NOT (EQUAL (GET-NTH I LST) (GET-NTH 0 LST)))) (NOT (LESSP 18 17))), which again simplifies, using linear arithmetic, to: T. Case 4.3. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (EQUAL N 0) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (EQUAL (GET-NTH I LST) (GET-NTH 0 LST))) (NOT (LESSP 18 18))), which again simplifies, using linear arithmetic, to: T. Case 4.2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (NOT (EQUAL (GET-NTH I LST) (GET-NTH 0 LST)))) (NOT (LESSP 18 17))), which again simplifies, using linear arithmetic, to: T. Case 4.1. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (EQUAL (GET-NTH I LST) (GET-NTH 0 LST))) (NOT (LESSP 18 18))), which again simplifies, using linear arithmetic, to: T. Case 3. (IMPLIES (AND (LESSP I N) (NOT (ZEROP K)) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N (ADD1 I)))) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (MJRTY-CAND-T A N LST CAND I K)))), which simplifies, using linear arithmetic, applying SUB1-ADD1, DIFFERENCE-0, and MJRTY-CAND-T-0, and unfolding ZEROP, DIFFERENCE, MJRTY-CAND-T, LESSP, SPLUS, TIMES, and PLUS, to the following six new goals: Case 3.6. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE (SUB1 N) 0))) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (PLUS 8 (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))))). But this again simplifies, rewriting with SUB1-OF-1, and opening up the functions LESSP, EQUAL, DIFFERENCE, TIMES, and PLUS, to the following two new goals: Case 3.6.2. (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 18 (TIMES 9 (SUB1 N))) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (PLUS 8 (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))))). This further simplifies, applying the lemma SUB1-TYPE-RESTRICTION, to the conjecture: (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 18 (TIMES 9 (SUB1 N))) (MJRTY-CAND-T A N LST CAND 1 (SUB1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 N)) (PLUS 8 (MJRTY-CAND-T A N LST CAND 1 (SUB1 K)))))). Appealing to the lemma SUB1-ELIM, we now replace N by (ADD1 X) to eliminate (SUB1 N). We employ the type restriction lemma noted when SUB1 was introduced to constrain the new variable. The result is: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL (ADD1 X) 0)) (NOT (NUMBERP I)) (NOT (EQUAL (ADD1 X) 1)) (NOT (LESSP (PLUS 18 (TIMES 9 X)) (MJRTY-CAND-T A (ADD1 X) LST CAND 1 (SUB1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 (ADD1 X))) (PLUS 8 (MJRTY-CAND-T A (ADD1 X) LST CAND 1 (SUB1 K)))))). This further simplifies, rewriting with ADD1-EQUAL, TIMES-ADD1, and PLUS-COMMUTATIVITY1, and expanding NUMBERP, to: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (NUMBERP I)) (NOT (EQUAL X 0)) (NOT (LESSP (PLUS 18 (TIMES 9 X)) (MJRTY-CAND-T A (ADD1 X) LST CAND 1 (SUB1 K))))) (NOT (LESSP (PLUS 9 18 (TIMES 9 X)) (PLUS 8 (MJRTY-CAND-T A (ADD1 X) LST CAND 1 (SUB1 K)))))), which finally simplifies, using linear arithmetic, to: T. Case 3.6.1. (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (EQUAL N 1) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP 27 (PLUS 8 (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))))), which again simplifies, rewriting with SUB1-TYPE-RESTRICTION and MJRTY-CAND-T-1, and expanding the functions EQUAL, NUMBERP, TIMES, PLUS, and LESSP, to: T. Case 3.5. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE (SUB1 N) I))) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))))). But this again simplifies, rewriting with MJRTY-T-CROCK, DIFFERENCE=0, CORRECTNESS-OF-CANCEL-LESSP-TIMES, and DIFFERENCE-PLUS2, and opening up the definitions of AND, NOT, and ZEROP, to: (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))))), which again simplifies, using linear arithmetic, to the goal: (IMPLIES (AND (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 18 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))))). This again simplifies, using linear arithmetic, to: T. Case 3.4. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL N 0) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (NOT (LESSP 18 17))), which again simplifies, using linear arithmetic, to: T. Case 3.3. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL N 0) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))) (EQUAL CAND (GET-NTH 0 LST))) (NOT (LESSP 18 18))), which again simplifies, using linear arithmetic, to: T. Case 3.2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (NOT (LESSP 18 17))), which again simplifies, using linear arithmetic, to: T. Case 3.1. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 18 (TIMES 9 0)) (MJRTY-CAND-T A N LST CAND (ADD1 I) (SUB1 K)))) (EQUAL CAND (GET-NTH 0 LST))) (NOT (LESSP 18 18))), which again simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (NOT (LESSP I N)) (EQUAL CAND (GET-NTH 0 LST))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (MJRTY-CAND-T A N LST CAND I K)))), which simplifies, applying the lemma DIFFERENCE-0, and opening up the functions TIMES, PLUS, MJRTY-CAND-T, and LESSP, to: T. Case 1. (IMPLIES (AND (NOT (LESSP I N)) (NOT (EQUAL CAND (GET-NTH 0 LST)))) (NOT (LESSP (PLUS 18 (TIMES 9 (DIFFERENCE N I))) (MJRTY-CAND-T A N LST CAND I K)))), which simplifies, rewriting with DIFFERENCE-0, and unfolding TIMES, PLUS, MJRTY-CAND-T, and LESSP, to: T. That finishes the proof of *1. Q.E.D. [ 0.0 0.4 0.1 ] MJRTY-CAND-T-UBOUND (PROVE-LEMMA MJRTY-SN-T-UBOUND (REWRITE) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (MJRTY-SN-T A N LST CAND I K))) ((ENABLE SPLUS TIMES))) WARNING: Note that the proposed lemma MJRTY-SN-T-UBOUND is to be stored as zero type prescription rules, zero compound recognizer rules, one linear rule, and zero replacement rules. Give the conjecture the name *1. We will appeal to induction. Three inductions are suggested by terms in the conjecture. They merge into two likely candidate inductions. However, only one is unflawed. We will induct according to the following scheme: (AND (IMPLIES (AND (LESSP I N) (ZEROP K) (p N (ADD1 I) A LST (GET-NTH I LST) 1)) (p N I A LST CAND K)) (IMPLIES (AND (LESSP I N) (NOT (ZEROP K)) (EQUAL CAND (GET-NTH I LST)) (p N (ADD1 I) A LST CAND (ADD1 K))) (p N I A LST CAND K)) (IMPLIES (AND (LESSP I N) (NOT (ZEROP K)) (NOT (EQUAL CAND (GET-NTH I LST))) (p N (ADD1 I) A LST CAND (SUB1 K))) (p N I A LST CAND K)) (IMPLIES (AND (NOT (LESSP I N)) (ZEROP K)) (p N I A LST CAND K)) (IMPLIES (AND (NOT (LESSP I N)) (NOT (ZEROP K))) (p N I A LST CAND K))). Linear arithmetic can be used to establish that the measure (DIFFERENCE N I) decreases according to the well-founded relation LESSP in each induction step of the scheme. Note, however, the inductive instances chosen for CAND and K. The above induction scheme leads to five new goals: Case 5. (IMPLIES (AND (LESSP I N) (ZEROP K) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N (ADD1 I)))) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (MJRTY-SN-T A N LST CAND I K)))), which simplifies, using linear arithmetic, rewriting with SUB1-ADD1 and DIFFERENCE-0, and opening up the definitions of ZEROP, DIFFERENCE, SPLUS, EQUAL, LESSP, MJRTY-SN-T, TIMES, and PLUS, to the following four new goals: Case 5.4. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE (SUB1 N) 0))) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). But this again simplifies, applying SUB1-OF-1, and unfolding the functions LESSP, EQUAL, DIFFERENCE, TIMES, and PLUS, to the following two new conjectures: Case 5.4.2. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 17 (TIMES 9 (SUB1 N))) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). However this further simplifies, rewriting with SUB1-TYPE-RESTRICTION, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 17 (TIMES 9 (SUB1 N))) (MJRTY-SN-T A N LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) 1 1))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 X) to eliminate (SUB1 N). We rely upon the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove the new goal: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL (ADD1 X) 0)) (NOT (NUMBERP I)) (NOT (EQUAL (ADD1 X) 1)) (NOT (LESSP (PLUS 17 (TIMES 9 X)) (MJRTY-SN-T A (ADD1 X) LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 (ADD1 X))) (PLUS 8 (MJRTY-SN-T A (ADD1 X) LST (GET-NTH I LST) 1 1))))), which further simplifies, rewriting with ADD1-EQUAL, TIMES-ADD1, and PLUS-COMMUTATIVITY1, and unfolding the function NUMBERP, to: (IMPLIES (AND (NUMBERP X) (NOT (NUMBERP I)) (NOT (EQUAL X 0)) (NOT (LESSP (PLUS 17 (TIMES 9 X)) (MJRTY-SN-T A (ADD1 X) LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 9 17 (TIMES 9 X)) (PLUS 8 (MJRTY-SN-T A (ADD1 X) LST (GET-NTH I LST) 1 1))))), which finally simplifies, using linear arithmetic, to: T. Case 5.4.1. (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (EQUAL N 1) (NOT (LESSP (PLUS 17 (TIMES 9 0)) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP 26 (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))), which again simplifies, rewriting with SUB1-TYPE-RESTRICTION, and unfolding EQUAL, NUMBERP, TIMES, PLUS, LESSP, and MJRTY-SN-T, to: T. Case 5.3. (IMPLIES (AND (LESSP I N) (EQUAL K 0) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE (SUB1 N) I))) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). This again simplifies, rewriting with the lemmas MJRTY-T-CROCK, DIFFERENCE=0, CORRECTNESS-OF-CANCEL-LESSP-TIMES, and DIFFERENCE-PLUS2, and expanding AND, NOT, and ZEROP, to: (IMPLIES (AND (LESSP I N) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). But this again simplifies, using linear arithmetic, to the formula: (IMPLIES (AND (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (LESSP I N) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). This again simplifies, using linear arithmetic, to: T. Case 5.2. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE (SUB1 N) 0))) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))), which again simplifies, applying SUB1-OF-1, and opening up the definitions of LESSP, EQUAL, DIFFERENCE, TIMES, and PLUS, to the following two new conjectures: Case 5.2.2. (IMPLIES (AND (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 17 (TIMES 9 (SUB1 N))) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). But this further simplifies, applying SUB1-TYPE-RESTRICTION, to: (IMPLIES (AND (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 17 (TIMES 9 (SUB1 N))) (MJRTY-SN-T A N LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) 1 1))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 X) to eliminate (SUB1 N). We rely upon the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove: (IMPLIES (AND (NUMBERP X) (NOT (NUMBERP K)) (NOT (EQUAL (ADD1 X) 0)) (NOT (NUMBERP I)) (NOT (EQUAL (ADD1 X) 1)) (NOT (LESSP (PLUS 17 (TIMES 9 X)) (MJRTY-SN-T A (ADD1 X) LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 (ADD1 X))) (PLUS 8 (MJRTY-SN-T A (ADD1 X) LST (GET-NTH I LST) 1 1))))), which further simplifies, applying ADD1-EQUAL, TIMES-ADD1, and PLUS-COMMUTATIVITY1, and opening up NUMBERP, to: (IMPLIES (AND (NUMBERP X) (NOT (NUMBERP K)) (NOT (NUMBERP I)) (NOT (EQUAL X 0)) (NOT (LESSP (PLUS 17 (TIMES 9 X)) (MJRTY-SN-T A (ADD1 X) LST (GET-NTH I LST) 1 1)))) (NOT (LESSP (PLUS 9 17 (TIMES 9 X)) (PLUS 8 (MJRTY-SN-T A (ADD1 X) LST (GET-NTH I LST) 1 1))))), which finally simplifies, using linear arithmetic, to: T. Case 5.2.1. (IMPLIES (AND (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (EQUAL N 1) (NOT (LESSP (PLUS 17 (TIMES 9 0)) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP 26 (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))), which again simplifies, appealing to the lemma SUB1-TYPE-RESTRICTION, and unfolding the definitions of EQUAL, NUMBERP, TIMES, PLUS, LESSP, and MJRTY-SN-T, to: T. Case 5.1. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE (SUB1 N) I))) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))), which again simplifies, applying MJRTY-T-CROCK, DIFFERENCE=0, CORRECTNESS-OF-CANCEL-LESSP-TIMES, and DIFFERENCE-PLUS2, and unfolding the functions AND, NOT, and ZEROP, to the new formula: (IMPLIES (AND (LESSP I N) (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))), which again simplifies, using linear arithmetic, to the conjecture: (IMPLIES (AND (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (LESSP I N) (NOT (NUMBERP K)) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1)))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) 1))))). But this again simplifies, using linear arithmetic, to: T. Case 4. (IMPLIES (AND (LESSP I N) (NOT (ZEROP K)) (EQUAL CAND (GET-NTH I LST)) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N (ADD1 I)))) (MJRTY-SN-T A N LST CAND (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (MJRTY-SN-T A N LST CAND I K)))), which simplifies, using linear arithmetic, rewriting with SUB1-ADD1 and DIFFERENCE-0, and opening up ZEROP, DIFFERENCE, SPLUS, MJRTY-SN-T, TIMES, PLUS, LESSP, and EQUAL, to the following two new conjectures: Case 4.2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE (SUB1 N) 0))) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (MJRTY-SN-T A N LST (GET-NTH I LST) I K)))). This again simplifies, applying the lemmas SUB1-OF-1 and SUB1-TYPE-RESTRICTION, and expanding the definitions of LESSP, EQUAL, DIFFERENCE, TIMES, and PLUS, to two new conjectures: Case 4.2.2. (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 17 (TIMES 9 (SUB1 N))) (MJRTY-SN-T A N LST (GET-NTH I LST) 1 (ADD1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (MJRTY-SN-T A N LST (GET-NTH I LST) I K)))), which again simplifies, rewriting with SUB1-TYPE-RESTRICTION, and expanding the definitions of SPLUS, LESSP, and MJRTY-SN-T, to: (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 17 (TIMES 9 (SUB1 N))) (MJRTY-SN-T A N LST (GET-NTH I LST) 1 (ADD1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (PLUS 9 (MJRTY-SN-T A N LST (GET-NTH I LST) 1 (ADD1 K)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 X) to eliminate (SUB1 N). We rely upon the type restriction lemma noted when SUB1 was introduced to restrict the new variable. This produces: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL (ADD1 X) 0)) (NOT (NUMBERP I)) (NOT (EQUAL (ADD1 X) 1)) (NOT (LESSP (PLUS 17 (TIMES 9 X)) (MJRTY-SN-T A (ADD1 X) LST (GET-NTH I LST) 1 (ADD1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 (ADD1 X))) (PLUS 9 (MJRTY-SN-T A (ADD1 X) LST (GET-NTH I LST) 1 (ADD1 K)))))), which further simplifies, rewriting with ADD1-EQUAL, TIMES-ADD1, PLUS-COMMUTATIVITY1, and CORRECTNESS-OF-CANCEL-LESSP-PLUS, and unfolding the definitions of NUMBERP and FIX, to: T. Case 4.2.1. (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (EQUAL N 1) (NOT (LESSP (PLUS 17 (TIMES 9 0)) (MJRTY-SN-T A N LST (GET-NTH I LST) 1 (ADD1 K))))) (NOT (LESSP 26 (MJRTY-SN-T A 1 LST (GET-NTH I LST) I K)))). This again simplifies, unfolding the definitions of EQUAL, NUMBERP, TIMES, PLUS, LESSP, and MJRTY-SN-T, to: (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (NUMBERP I))) (NOT (LESSP 26 (MJRTY-SN-T A 1 LST (GET-NTH I LST) I K)))). Call the above conjecture *1.1. Case 4.1. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE (SUB1 N) I))) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 9 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))))). But this again simplifies, rewriting with MJRTY-T-CROCK, DIFFERENCE=0, CORRECTNESS-OF-CANCEL-LESSP-TIMES, and DIFFERENCE-PLUS2, and unfolding the functions AND, NOT, and ZEROP, to: (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 9 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))))), which again simplifies, using linear arithmetic, to the goal: (IMPLIES (AND (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 9 (MJRTY-SN-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))))). However this again simplifies, using linear arithmetic, to: T. Case 3. (IMPLIES (AND (LESSP I N) (NOT (ZEROP K)) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N (ADD1 I)))) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (MJRTY-SN-T A N LST CAND I K)))), which simplifies, using linear arithmetic, appealing to the lemmas SUB1-ADD1 and DIFFERENCE-0, and opening up the definitions of ZEROP, DIFFERENCE, MJRTY-SN-T, LESSP, SPLUS, TIMES, PLUS, and EQUAL, to two new goals: Case 3.2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE (SUB1 N) 0))) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (PLUS 8 (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K)))))), which again simplifies, appealing to the lemma SUB1-OF-1, and unfolding LESSP, EQUAL, DIFFERENCE, TIMES, and PLUS, to two new formulas: Case 3.2.2. (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 17 (TIMES 9 (SUB1 N))) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (PLUS 8 (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K)))))), which further simplifies, applying SUB1-TYPE-RESTRICTION, to the new conjecture: (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 17 (TIMES 9 (SUB1 N))) (MJRTY-SN-T A N LST CAND 1 (SUB1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 N)) (PLUS 8 (MJRTY-SN-T A N LST CAND 1 (SUB1 K)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 X) to eliminate (SUB1 N). We use the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL (ADD1 X) 0)) (NOT (NUMBERP I)) (NOT (EQUAL (ADD1 X) 1)) (NOT (LESSP (PLUS 17 (TIMES 9 X)) (MJRTY-SN-T A (ADD1 X) LST CAND 1 (SUB1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 (ADD1 X))) (PLUS 8 (MJRTY-SN-T A (ADD1 X) LST CAND 1 (SUB1 K)))))), which further simplifies, applying the lemmas ADD1-EQUAL, TIMES-ADD1, and PLUS-COMMUTATIVITY1, and opening up the function NUMBERP, to: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (NUMBERP I)) (NOT (EQUAL X 0)) (NOT (LESSP (PLUS 17 (TIMES 9 X)) (MJRTY-SN-T A (ADD1 X) LST CAND 1 (SUB1 K))))) (NOT (LESSP (PLUS 9 17 (TIMES 9 X)) (PLUS 8 (MJRTY-SN-T A (ADD1 X) LST CAND 1 (SUB1 K)))))). But this finally simplifies, using linear arithmetic, to: T. Case 3.2.1. (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (EQUAL N 1) (NOT (LESSP (PLUS 17 (TIMES 9 0)) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP 26 (PLUS 8 (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K)))))), which again simplifies, applying SUB1-TYPE-RESTRICTION and SUB1-OF-1, and opening up the functions EQUAL, NUMBERP, TIMES, PLUS, LESSP, MJRTY-SN-T, and SUB1, to: T. Case 3.1. (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE (SUB1 N) I))) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K)))))). But this again simplifies, applying MJRTY-T-CROCK, DIFFERENCE=0, CORRECTNESS-OF-CANCEL-LESSP-TIMES, and DIFFERENCE-PLUS2, and expanding the functions AND, NOT, and ZEROP, to: (IMPLIES (AND (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K)))))), which again simplifies, using linear arithmetic, to: (IMPLIES (AND (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (LESSP I N) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 17 (TIMES 9 (DIFFERENCE N I))) 9) (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K))))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (PLUS 8 (MJRTY-SN-T A N LST CAND (ADD1 I) (SUB1 K)))))). This again simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (NOT (LESSP I N)) (ZEROP K)) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (MJRTY-SN-T A N LST CAND I K)))), which simplifies, rewriting with DIFFERENCE-0, and expanding the definitions of ZEROP, TIMES, PLUS, EQUAL, MJRTY-SN-T, and LESSP, to: T. Case 1. (IMPLIES (AND (NOT (LESSP I N)) (NOT (ZEROP K))) (NOT (LESSP (PLUS 17 (TIMES 9 (DIFFERENCE N I))) (MJRTY-SN-T A N LST CAND I K)))). This simplifies, rewriting with DIFFERENCE-0, and unfolding the definitions of ZEROP, TIMES, PLUS, MJRTY-SN-T, and LESSP, to: T. So next consider: (IMPLIES (AND (NOT (EQUAL K 0)) (NUMBERP K) (NOT (NUMBERP I))) (NOT (LESSP 26 (MJRTY-SN-T A 1 LST (GET-NTH I LST) I K)))), named *1.1 above. Let us appeal to the induction principle. There is only one suggested induction. We will induct according to the following scheme: (AND (IMPLIES (AND (LESSP I 1) (ZEROP K) (p A LST (ADD1 I) 1)) (p A LST I K)) (IMPLIES (AND (LESSP I 1) (NOT (ZEROP K)) (EQUAL (GET-NTH I LST) (GET-NTH I LST)) (p A LST (ADD1 I) (ADD1 K))) (p A LST I K)) (IMPLIES (AND (LESSP I 1) (NOT (ZEROP K)) (NOT (EQUAL (GET-NTH I LST) (GET-NTH I LST))) (p A LST (ADD1 I) (SUB1 K))) (p A LST I K)) (IMPLIES (AND (NOT (LESSP I 1)) (ZEROP K)) (p A LST I K)) (IMPLIES (AND (NOT (LESSP I 1)) (NOT (ZEROP K))) (p A LST I K))). Linear arithmetic can be used to prove that the measure (DIFFERENCE 1 I) decreases according to the well-founded relation LESSP in each induction step of the scheme. Note, however, the inductive instances chosen for K. The above induction scheme generates the following five new formulas: Case 5. (IMPLIES (AND (LESSP I 1) (ZEROP K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (NUMBERP I))) (NOT (LESSP 26 (MJRTY-SN-T A 1 LST (GET-NTH I LST) I K)))). This simplifies, appealing to the lemma LESSP-OF-1, and expanding the definition of ZEROP, to: T. Case 4. (IMPLIES (AND (LESSP I 1) (NOT (ZEROP K)) (EQUAL (GET-NTH I LST) (GET-NTH I LST)) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (NUMBERP I))) (NOT (LESSP 26 (MJRTY-SN-T A 1 LST (GET-NTH I LST) I K)))). This simplifies, rewriting with LESSP-OF-1 and SUB1-TYPE-RESTRICTION, and unfolding the functions ZEROP, MJRTY-SN-T, LESSP, and SPLUS, to: T. Case 3. (IMPLIES (AND (LESSP I 1) (NOT (ZEROP K)) (NOT (EQUAL (GET-NTH I LST) (GET-NTH I LST))) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (NUMBERP I))) (NOT (LESSP 26 (MJRTY-SN-T A 1 LST (GET-NTH I LST) I K)))), which simplifies, trivially, to: T. Case 2. (IMPLIES (AND (NOT (LESSP I 1)) (ZEROP K) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (NUMBERP I))) (NOT (LESSP 26 (MJRTY-SN-T A 1 LST (GET-NTH I LST) I K)))). This simplifies, appealing to the lemma LESSP-OF-1, to: T. Case 1. (IMPLIES (AND (NOT (LESSP I 1)) (NOT (ZEROP K)) (NOT (EQUAL K 0)) (NUMBERP K) (NOT (NUMBERP I))) (NOT (LESSP 26 (MJRTY-SN-T A 1 LST (GET-NTH I LST) I K)))). This simplifies, applying the lemma LESSP-OF-1, to: T. That finishes the proof of *1.1, which also finishes the proof of *1. Q.E.D. [ 0.0 0.4 0.1 ] MJRTY-SN-T-UBOUND (PROVE-LEMMA CAND-CNT-T-0 (REWRITE) (AND (EQUAL (CAND-CNT-T A 0 LST CAND I K) (IF (LESSP 0 K) 14 13)) (EQUAL (CAND-CNT-T A N LST CAND N K) (IF (LESSP (QUOTIENT N 2) K) 14 13))) ((EXPAND (CAND-CNT-T A N LST CAND N K)))) WARNING: Note that the proposed lemma CAND-CNT-T-0 is to be stored as zero type prescription rules, zero compound recognizer rules, zero linear rules, and two replacement rules. This conjecture can be simplified, using the abbreviation AND, to two new goals: Case 2. (EQUAL (CAND-CNT-T A 0 LST CAND I K) (IF (LESSP 0 K) 14 13)), which simplifies, expanding the definitions of QUOTIENT, LESSP, EQUAL, and CAND-CNT-T, to: T. Case 1. (EQUAL (CAND-CNT-T A N LST CAND N K) (IF (LESSP (QUOTIENT N 2) K) 14 13)), which simplifies, applying QUOTIENT-TIMES-LESSP, and expanding CAND-CNT-T, EQUAL, and NUMBERP, to the following four new goals: Case 1.4. (IMPLIES (AND (NOT (LESSP N (TIMES 2 K))) (LESSP N N) (EQUAL CAND (GET-NTH N LST))) (EQUAL (SPLUS 6 (CAND-CNT-T A N LST CAND (ADD1 N) (ADD1 K))) 13)). This again simplifies, using linear arithmetic, to: T. Case 1.3. (IMPLIES (AND (NOT (LESSP N (TIMES 2 K))) (LESSP N N) (NOT (EQUAL CAND (GET-NTH N LST)))) (EQUAL (SPLUS 5 (CAND-CNT-T A N LST CAND (ADD1 N) K)) 13)), which again simplifies, using linear arithmetic, to: T. Case 1.2. (IMPLIES (AND (LESSP N (TIMES 2 K)) (LESSP N N) (EQUAL CAND (GET-NTH N LST))) (EQUAL (SPLUS 6 (CAND-CNT-T A N LST CAND (ADD1 N) (ADD1 K))) 14)), which again simplifies, using linear arithmetic, to: T. Case 1.1. (IMPLIES (AND (LESSP N (TIMES 2 K)) (LESSP N N) (NOT (EQUAL CAND (GET-NTH N LST)))) (EQUAL (SPLUS 5 (CAND-CNT-T A N LST CAND (ADD1 N) K)) 14)), which again simplifies, using linear arithmetic, to: T. Q.E.D. [ 0.0 0.2 0.0 ] CAND-CNT-T-0 (PROVE-LEMMA CAND-CNT-T-1 (REWRITE) (EQUAL (CAND-CNT-T A 1 LST CAND I K) (IF (ZEROP I) (IF (EQUAL CAND (GET-NTH I LST)) 20 (IF (LESSP 0 K) 19 18)) (IF (LESSP 0 K) 14 13))) ((EXPAND (CAND-CNT-T A 1 LST CAND I K)))) This formula simplifies, rewriting with the lemma LESSP-OF-1, and unfolding the definitions of CAND-CNT-T, LESSP, EQUAL, QUOTIENT, SPLUS, and ZEROP, to six new goals: Case 6. (IMPLIES (AND (NOT (NUMBERP I)) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL K 0)) (EQUAL (SPLUS 5 13) 18)), which again simplifies, expanding the functions SPLUS and EQUAL, to: T. Case 5. (IMPLIES (AND (NOT (NUMBERP I)) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (NUMBERP K))) (EQUAL (SPLUS 5 13) 18)), which again simplifies, unfolding the functions SPLUS and EQUAL, to: T. Case 4. (IMPLIES (AND (NOT (NUMBERP I)) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (SPLUS 5 14) 19)), which again simplifies, opening up SPLUS and EQUAL, to: T. Case 3. (IMPLIES (AND (EQUAL I 0) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL K 0)) (NUMBERP K)) (EQUAL (SPLUS 5 14) 19)), which again simplifies, opening up the functions SPLUS and EQUAL, to: T. Case 2. (IMPLIES (AND (EQUAL I 0) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL K 0)) (EQUAL (SPLUS 5 13) 18)), which again simplifies, expanding the functions SPLUS and EQUAL, to: T. Case 1. (IMPLIES (AND (EQUAL I 0) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (NUMBERP K))) (EQUAL (SPLUS 5 13) 18)), which again simplifies, opening up SPLUS and EQUAL, to: T. Q.E.D. [ 0.0 0.0 0.0 ] CAND-CNT-T-1 (PROVE-LEMMA CAND-CNT-T-UBOUND (REWRITE) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) (CAND-CNT-T A N LST CAND I K))) ((ENABLE SPLUS TIMES))) WARNING: Note that the proposed lemma CAND-CNT-T-UBOUND is to be stored as zero type prescription rules, zero compound recognizer rules, one linear rule, and zero replacement rules. Give the conjecture the name *1. We will appeal to induction. Three inductions are suggested by terms in the conjecture. They merge into two likely candidate inductions. However, only one is unflawed. We will induct according to the following scheme: (AND (IMPLIES (AND (LESSP I N) (EQUAL CAND (GET-NTH I LST)) (p N (ADD1 I) A LST CAND (ADD1 K))) (p N I A LST CAND K)) (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (p N (ADD1 I) A LST CAND K)) (p N I A LST CAND K)) (IMPLIES (AND (NOT (LESSP I N)) (LESSP (QUOTIENT N 2) K)) (p N I A LST CAND K)) (IMPLIES (AND (NOT (LESSP I N)) (NOT (LESSP (QUOTIENT N 2) K))) (p N I A LST CAND K))). Linear arithmetic can be used to establish that the measure (DIFFERENCE N I) decreases according to the well-founded relation LESSP in each induction step of the scheme. Note, however, the inductive instances chosen for K. The above induction scheme leads to four new goals: Case 4. (IMPLIES (AND (LESSP I N) (EQUAL CAND (GET-NTH I LST)) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N (ADD1 I)))) (CAND-CNT-T A N LST CAND (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) (CAND-CNT-T A N LST CAND I K)))), which simplifies, using linear arithmetic, rewriting with SUB1-ADD1, DIFFERENCE-0, and CAND-CNT-T-0, and opening up the definitions of DIFFERENCE, SPLUS, CAND-CNT-T, TIMES, PLUS, EQUAL, LESSP, QUOTIENT, and NUMBERP, to the following eight new goals: Case 4.8. (IMPLIES (AND (LESSP I N) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE (SUB1 N) 0))) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 14 (TIMES 6 N)) (CAND-CNT-T A N LST (GET-NTH I LST) I K)))). But this again simplifies, applying SUB1-OF-1, SUB1-TYPE-RESTRICTION, and CAND-CNT-T-1, and unfolding the functions LESSP, EQUAL, DIFFERENCE, TIMES, and PLUS, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 14 (TIMES 6 (SUB1 N))) (CAND-CNT-T A N LST (GET-NTH I LST) 1 (ADD1 K))))) (NOT (LESSP (PLUS 14 (TIMES 6 N)) (CAND-CNT-T A N LST (GET-NTH I LST) I K)))), which again simplifies, rewriting with SUB1-TYPE-RESTRICTION, and opening up SPLUS, LESSP, and CAND-CNT-T, to: (IMPLIES (AND (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 14 (TIMES 6 (SUB1 N))) (CAND-CNT-T A N LST (GET-NTH I LST) 1 (ADD1 K))))) (NOT (LESSP (PLUS 14 (TIMES 6 N)) (PLUS 6 (CAND-CNT-T A N LST (GET-NTH I LST) 1 (ADD1 K)))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 X) to eliminate (SUB1 N). We rely upon the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We would thus like to prove the new goal: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL (ADD1 X) 0)) (NOT (NUMBERP I)) (NOT (EQUAL (ADD1 X) 1)) (NOT (LESSP (PLUS 14 (TIMES 6 X)) (CAND-CNT-T A (ADD1 X) LST (GET-NTH I LST) 1 (ADD1 K))))) (NOT (LESSP (PLUS 14 (TIMES 6 (ADD1 X))) (PLUS 6 (CAND-CNT-T A (ADD1 X) LST (GET-NTH I LST) 1 (ADD1 K)))))), which further simplifies, rewriting with ADD1-EQUAL, TIMES-ADD1, PLUS-COMMUTATIVITY1, and CORRECTNESS-OF-CANCEL-LESSP-PLUS, and unfolding the functions NUMBERP and FIX, to: T. Case 4.7. (IMPLIES (AND (LESSP I N) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE (SUB1 N) I))) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) (PLUS 6 (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))))). This again simplifies, rewriting with the lemmas MJRTY-T-CROCK, DIFFERENCE=0, CORRECTNESS-OF-CANCEL-LESSP-TIMES, and DIFFERENCE-PLUS2, and unfolding AND, NOT, and ZEROP, to: (IMPLIES (AND (LESSP I N) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 14 (TIMES 6 (DIFFERENCE N I))) 6) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) (PLUS 6 (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))))). This again simplifies, using linear arithmetic, to the conjecture: (IMPLIES (AND (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) 6) (LESSP I N) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 14 (TIMES 6 (DIFFERENCE N I))) 6) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K))))) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) (PLUS 6 (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))))). However this again simplifies, using linear arithmetic, to: T. Case 4.6. (IMPLIES (AND (LESSP I N) (EQUAL N 0) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (NOT (NUMBERP K))) (NOT (LESSP 14 13))), which again simplifies, using linear arithmetic, to: T. Case 4.5. (IMPLIES (AND (LESSP I N) (EQUAL N 0) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (EQUAL K 0)) (NOT (LESSP 14 13))), which again simplifies, using linear arithmetic, to: T. Case 4.4. (IMPLIES (AND (LESSP I N) (EQUAL N 0) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (NOT (EQUAL K 0)) (NUMBERP K)) (NOT (LESSP 14 14))), which again simplifies, using linear arithmetic, to: T. Case 4.3. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (NOT (NUMBERP K))) (NOT (LESSP 14 13))), which again simplifies, using linear arithmetic, to: T. Case 4.2. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (EQUAL K 0)) (NOT (LESSP 14 13))), which again simplifies, using linear arithmetic, to: T. Case 4.1. (IMPLIES (AND (LESSP I N) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST (GET-NTH I LST) (ADD1 I) (ADD1 K)))) (NOT (EQUAL K 0)) (NUMBERP K)) (NOT (LESSP 14 14))), which again simplifies, using linear arithmetic, to: T. Case 3. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N (ADD1 I)))) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) (CAND-CNT-T A N LST CAND I K)))), which simplifies, using linear arithmetic, applying SUB1-ADD1, DIFFERENCE-0, and CAND-CNT-T-0, and expanding the functions DIFFERENCE, CAND-CNT-T, LESSP, SPLUS, TIMES, PLUS, EQUAL, NUMBERP, and QUOTIENT, to the following eight new conjectures: Case 3.8. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE (SUB1 N) 0))) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (NOT (LESSP (PLUS 14 (TIMES 6 N)) (PLUS 5 (CAND-CNT-T A N LST CAND (ADD1 I) K))))). However this again simplifies, applying SUB1-OF-1, and unfolding the definitions of LESSP, EQUAL, DIFFERENCE, TIMES, and PLUS, to the following two new formulas: Case 3.8.2. (IMPLIES (AND (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 14 (TIMES 6 (SUB1 N))) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (NOT (LESSP (PLUS 14 (TIMES 6 N)) (PLUS 5 (CAND-CNT-T A N LST CAND (ADD1 I) K))))). This further simplifies, rewriting with SUB1-TYPE-RESTRICTION, to: (IMPLIES (AND (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (NOT (EQUAL N 1)) (NOT (LESSP (PLUS 14 (TIMES 6 (SUB1 N))) (CAND-CNT-T A N LST CAND 1 K)))) (NOT (LESSP (PLUS 14 (TIMES 6 N)) (PLUS 5 (CAND-CNT-T A N LST CAND 1 K))))). Applying the lemma SUB1-ELIM, replace N by (ADD1 X) to eliminate (SUB1 N). We use the type restriction lemma noted when SUB1 was introduced to restrict the new variable. We thus obtain the new conjecture: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL (ADD1 X) 0)) (NOT (NUMBERP I)) (NOT (EQUAL (ADD1 X) 1)) (NOT (LESSP (PLUS 14 (TIMES 6 X)) (CAND-CNT-T A (ADD1 X) LST CAND 1 K)))) (NOT (LESSP (PLUS 14 (TIMES 6 (ADD1 X))) (PLUS 5 (CAND-CNT-T A (ADD1 X) LST CAND 1 K))))), which further simplifies, applying ADD1-EQUAL, TIMES-ADD1, and PLUS-COMMUTATIVITY1, and unfolding the function NUMBERP, to the new formula: (IMPLIES (AND (NUMBERP X) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (NUMBERP I)) (NOT (EQUAL X 0)) (NOT (LESSP (PLUS 14 (TIMES 6 X)) (CAND-CNT-T A (ADD1 X) LST CAND 1 K)))) (NOT (LESSP (PLUS 6 14 (TIMES 6 X)) (PLUS 5 (CAND-CNT-T A (ADD1 X) LST CAND 1 K))))), which finally simplifies, using linear arithmetic, to: T. Case 3.8.1. (IMPLIES (AND (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NOT (NUMBERP I)) (EQUAL N 1) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (NOT (LESSP 20 (PLUS 5 (CAND-CNT-T A N LST CAND (ADD1 I) K))))), which again simplifies, applying SUB1-TYPE-RESTRICTION and CAND-CNT-T-1, and expanding the functions EQUAL, NUMBERP, TIMES, PLUS, and LESSP, to: T. Case 3.7. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE (SUB1 N) I))) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) (PLUS 5 (CAND-CNT-T A N LST CAND (ADD1 I) K))))). This again simplifies, rewriting with MJRTY-T-CROCK, DIFFERENCE=0, CORRECTNESS-OF-CANCEL-LESSP-TIMES, and DIFFERENCE-PLUS2, and opening up AND, NOT, and ZEROP, to: (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 14 (TIMES 6 (DIFFERENCE N I))) 6) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) (PLUS 5 (CAND-CNT-T A N LST CAND (ADD1 I) K))))), which again simplifies, using linear arithmetic, to: (IMPLIES (AND (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) 6) (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (EQUAL N 0)) (NUMBERP N) (NUMBERP I) (NOT (LESSP (DIFFERENCE (PLUS 14 (TIMES 6 (DIFFERENCE N I))) 6) (CAND-CNT-T A N LST CAND (ADD1 I) K)))) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) (PLUS 5 (CAND-CNT-T A N LST CAND (ADD1 I) K))))). But this again simplifies, using linear arithmetic, to: T. Case 3.6. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL N 0) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST CAND (ADD1 I) K))) (NOT (NUMBERP K))) (NOT (LESSP 14 13))), which again simplifies, using linear arithmetic, to: T. Case 3.5. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL N 0) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST CAND (ADD1 I) K))) (EQUAL K 0)) (NOT (LESSP 14 13))), which again simplifies, using linear arithmetic, to: T. Case 3.4. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (EQUAL N 0) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST CAND (ADD1 I) K))) (NOT (EQUAL K 0)) (NUMBERP K)) (NOT (LESSP 14 14))), which again simplifies, using linear arithmetic, to: T. Case 3.3. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST CAND (ADD1 I) K))) (NOT (NUMBERP K))) (NOT (LESSP 14 13))), which again simplifies, using linear arithmetic, to: T. Case 3.2. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST CAND (ADD1 I) K))) (EQUAL K 0)) (NOT (LESSP 14 13))), which again simplifies, using linear arithmetic, to: T. Case 3.1. (IMPLIES (AND (LESSP I N) (NOT (EQUAL CAND (GET-NTH I LST))) (NOT (NUMBERP N)) (NOT (LESSP (PLUS 14 (TIMES 6 0)) (CAND-CNT-T A N LST CAND (ADD1 I) K))) (NOT (EQUAL K 0)) (NUMBERP K)) (NOT (LESSP 14 14))), which again simplifies, using linear arithmetic, to: T. Case 2. (IMPLIES (AND (NOT (LESSP I N)) (LESSP (QUOTIENT N 2) K)) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) (CAND-CNT-T A N LST CAND I K)))), which simplifies, rewriting with TIMES-1, QUOTIENT-TIMES-LESSP, DIFFERENCE-0, and TIMES-ZERO, and expanding the definitions of EQUAL, NUMBERP, SUB1, TIMES, PLUS, CAND-CNT-T, OR, ZEROP, and LESSP, to: T. Case 1. (IMPLIES (AND (NOT (LESSP I N)) (NOT (LESSP (QUOTIENT N 2) K))) (NOT (LESSP (PLUS 14 (TIMES 6 (DIFFERENCE N I))) (CAND-CNT-T A N LST CAND I K)))). This simplifies, rewriting with TIMES-1, QUOTIENT-TIMES-LESSP, DIFFERENCE-0, and TIMES-ZERO, and expanding the functions EQUAL, NUMBERP, SUB1, TIMES, PLUS, CAND-CNT-T, OR, ZEROP, and LESSP, to: T. That finishes the proof of *1. Q.E.D. [ 0.0 0.2 0.1 ] CAND-CNT-T-UBOUND (PROVE-LEMMA MJRTY-T-UBOUND NIL (LEQ (MJRTY-T A N LST) (PLUS 46 (TIMES 15 (SUB1 N)))) ((ENABLE SPLUS MJRTY-T))) This conjecture simplifies, applying PLUS-COMMUTATIVITY and QUOTIENT-TIMES-LESSP, and opening up the definitions of NUMBERP, EQUAL, SPLUS, and MJRTY-T, to four new formulas: Case 4. (IMPLIES (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0) (NOT (LESSP (PLUS 46 (TIMES 15 (SUB1 N))) (PLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1))))), which again simplifies, using linear arithmetic and applying MJRTY-SN-T-UBOUND and DIFFERENCE-SUB1, to: T. Case 3. (IMPLIES (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1))) (NOT (LESSP (PLUS 46 (TIMES 15 (SUB1 N))) (PLUS 14 (MJRTY-SN-T A N LST (GET-NTH 0 LST) 1 1))))). This again simplifies, using linear arithmetic and applying the lemmas MJRTY-SN-T-UBOUND and DIFFERENCE-SUB1, to: T. Case 2. (IMPLIES (AND (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (NOT (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1)))) (NOT (LESSP (PLUS 46 (TIMES 15 (SUB1 N))) (PLUS 14 (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1) (CAND-CNT-T A N LST (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1) 1 0))))), which again simplifies, using linear arithmetic and rewriting with MJRTY-CAND-T-UBOUND, CAND-CNT-T-UBOUND, and DIFFERENCE-SUB1, to: T. Case 1. (IMPLIES (AND (NOT (EQUAL (MJRTY-K N LST (GET-NTH 0 LST) 1 1) 0)) (NOT (LESSP N (TIMES 2 (MJRTY-K N LST (GET-NTH 0 LST) 1 1)))) (EQUAL (GET-NTH 0 LST) (MJRTY-CAND N LST (GET-NTH 0 LST) 1 1))) (NOT (LESSP (PLUS 46 (TIMES 15 (SUB1 N))) (PLUS 14 (CAND-CNT-T A N LST (GET-NTH 0 LST) 1 1) (MJRTY-CAND-T A N LST (GET-NTH 0 LST) 1 1))))). However this again simplifies, using linear arithmetic and rewriting with the lemmas CAND-CNT-T-UBOUND, MJRTY-CAND-T-UBOUND, and DIFFERENCE-SUB1, to: T. Q.E.D. [ 0.0 0.1 0.0 ] MJRTY-T-UBOUND