:: SCMP_GCD semantic presentation begin definitionlet "k" be ($#m1_hidden :::"Nat":::); func :::"intpos"::: "k" -> ($#m1_subset_1 :::"Int_position":::) equals :: SCMP_GCD:def 1 (Set ($#k10_ami_3 :::"dl."::: ) "k"); end; :: deftheorem defines :::"intpos"::: SCMP_GCD:def 1 : (Bool "for" (Set (Var "k")) "being" ($#m1_hidden :::"Nat":::) "holds" (Bool (Set ($#k1_scmp_gcd :::"intpos"::: ) (Set (Var "k"))) ($#r1_hidden :::"="::: ) (Set ($#k10_ami_3 :::"dl."::: ) (Set (Var "k"))))); theorem :: SCMP_GCD:1 (Bool "for" (Set (Var "n1")) "," (Set (Var "n2")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k5_numbers :::"NAT"::: ) ) "holds" (Bool (Set ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set (Var "n1")) "," (Set (Var "n2")) ")" ) ($#r1_hidden :::"="::: ) (Set ($#k1_scmp_gcd :::"intpos"::: ) (Set "(" (Set (Var "n1")) ($#k2_nat_1 :::"+"::: ) (Set (Var "n2")) ")" )))) ; theorem :: SCMP_GCD:2 (Bool "for" (Set (Var "s")) "being" ($#m1_hidden :::"State":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) (Bool "for" (Set (Var "m1")) "," (Set (Var "m2")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k5_numbers :::"NAT"::: ) ) "st" (Bool (Bool (Set ($#k5_memstr_0 :::"IC"::: ) (Set (Var "s"))) ($#r1_hidden :::"="::: ) (Set (Set (Var "m1")) ($#k2_nat_1 :::"+"::: ) (Set (Var "m2"))))) "holds" (Bool (Set ($#k17_scmpds_2 :::"ICplusConst"::: ) "(" (Set (Var "s")) "," (Set "(" ($#k4_xcmplx_0 :::"-"::: ) (Set (Var "m2")) ")" ) ")" ) ($#r1_hidden :::"="::: ) (Set (Var "m1"))))) ; definitionfunc :::"GBP"::: -> ($#m1_subset_1 :::"Int_position":::) equals :: SCMP_GCD:def 2 (Set ($#k1_scmp_gcd :::"intpos"::: ) (Set ($#k6_numbers :::"0"::: ) )); func :::"SBP"::: -> ($#m1_subset_1 :::"Int_position":::) equals :: SCMP_GCD:def 3 (Set ($#k1_scmp_gcd :::"intpos"::: ) (Num 1)); end; :: deftheorem defines :::"GBP"::: SCMP_GCD:def 2 : (Bool (Set ($#k2_scmp_gcd :::"GBP"::: ) ) ($#r1_hidden :::"="::: ) (Set ($#k1_scmp_gcd :::"intpos"::: ) (Set ($#k6_numbers :::"0"::: ) ))); :: deftheorem defines :::"SBP"::: SCMP_GCD:def 3 : (Bool (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ($#r1_hidden :::"="::: ) (Set ($#k1_scmp_gcd :::"intpos"::: ) (Num 1))); theorem :: SCMP_GCD:3 (Bool (Set ($#k2_scmp_gcd :::"GBP"::: ) ) ($#r1_hidden :::"<>"::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) )) ; theorem :: SCMP_GCD:4 (Bool "for" (Set (Var "i")) "being" ($#m1_subset_1 :::"Instruction":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) (Bool "for" (Set (Var "I")) "being" ($#m1_hidden :::"Program":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) "holds" (Bool (Set ($#k5_card_1 :::"card"::: ) (Set "(" (Set (Var "I")) ($#k3_scmpds_4 :::"';'"::: ) (Set (Var "i")) ")" )) ($#r1_hidden :::"="::: ) (Set (Set "(" ($#k5_card_1 :::"card"::: ) (Set (Var "I")) ")" ) ($#k2_nat_1 :::"+"::: ) (Num 1))))) ; theorem :: SCMP_GCD:5 (Bool "for" (Set (Var "i")) "," (Set (Var "j")) "being" ($#m1_subset_1 :::"Instruction":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) "holds" (Bool (Set ($#k5_card_1 :::"card"::: ) (Set "(" (Set (Var "i")) ($#k4_scmpds_4 :::"';'"::: ) (Set (Var "j")) ")" )) ($#r1_hidden :::"="::: ) (Num 2))) ; theorem :: SCMP_GCD:6 (Bool "for" (Set (Var "i")) "being" ($#m1_subset_1 :::"Instruction":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) (Bool "for" (Set (Var "I")) "being" ($#m1_hidden :::"Program":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) "holds" (Bool "(" (Bool (Set (Set "(" (Set (Var "I")) ($#k3_scmpds_4 :::"';'"::: ) (Set (Var "i")) ")" ) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k5_card_1 :::"card"::: ) (Set (Var "I")) ")" )) ($#r1_hidden :::"="::: ) (Set (Var "i"))) & (Bool (Set ($#k5_card_1 :::"card"::: ) (Set (Var "I"))) ($#r2_hidden :::"in"::: ) (Set ($#k9_xtuple_0 :::"dom"::: ) (Set "(" (Set (Var "I")) ($#k3_scmpds_4 :::"';'"::: ) (Set (Var "i")) ")" ))) ")" ))) ; theorem :: SCMP_GCD:7 (Bool "for" (Set (Var "i")) "being" ($#m1_subset_1 :::"Instruction":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) (Bool "for" (Set (Var "I")) "," (Set (Var "J")) "being" ($#m1_hidden :::"Program":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) "holds" (Bool (Set (Set "(" (Set "(" (Set (Var "I")) ($#k3_scmpds_4 :::"';'"::: ) (Set (Var "i")) ")" ) ($#k1_scmpds_4 :::"';'"::: ) (Set (Var "J")) ")" ) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k5_card_1 :::"card"::: ) (Set (Var "I")) ")" )) ($#r1_hidden :::"="::: ) (Set (Var "i"))))) ; begin definitionfunc :::"GCD-Algorithm"::: -> ($#m1_hidden :::"Program":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) equals :: SCMP_GCD:def 4 (Set (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set ($#k2_scmp_gcd :::"GBP"::: ) ) ($#k5_scmpds_2 :::":="::: ) (Set ($#k6_numbers :::"0"::: ) ) ")" ) ($#k4_scmpds_4 :::"';'"::: ) (Set "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ($#k5_scmpds_2 :::":="::: ) (Num 7) ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k6_scmpds_2 :::"saveIC"::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Set ($#k15_scmpds_i :::"RetIC"::: ) ) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k3_scmpds_2 :::"goto"::: ) (Num 2) ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k2_compos_1 :::"halt"::: ) (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" ($#k8_scmpds_2 :::"<=0_goto"::: ) (Num 9) ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 6) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k15_scmpds_2 :::"Divide"::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 2) "," (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 7) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Set "(" (Num 4) ($#k2_nat_1 :::"+"::: ) (Set ($#k14_scmpds_i :::"RetSP"::: ) ) ")" ) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k2_scmp_gcd :::"GBP"::: ) ) "," (Num 1) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k11_scmpds_2 :::"AddTo"::: ) "(" (Set ($#k2_scmp_gcd :::"GBP"::: ) ) "," (Num 1) "," (Num 4) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k6_scmpds_2 :::"saveIC"::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Set ($#k15_scmpds_i :::"RetIC"::: ) ) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k3_scmpds_2 :::"goto"::: ) (Set "(" ($#k4_xcmplx_0 :::"-"::: ) (Num 7) ")" ) ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 2) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 6) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k4_scmpds_2 :::"return"::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" )); end; :: deftheorem defines :::"GCD-Algorithm"::: SCMP_GCD:def 4 : (Bool (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#r1_hidden :::"="::: ) (Set (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set "(" (Set ($#k2_scmp_gcd :::"GBP"::: ) ) ($#k5_scmpds_2 :::":="::: ) (Set ($#k6_numbers :::"0"::: ) ) ")" ) ($#k4_scmpds_4 :::"';'"::: ) (Set "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ($#k5_scmpds_2 :::":="::: ) (Num 7) ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k6_scmpds_2 :::"saveIC"::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Set ($#k15_scmpds_i :::"RetIC"::: ) ) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k3_scmpds_2 :::"goto"::: ) (Num 2) ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k2_compos_1 :::"halt"::: ) (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" ($#k8_scmpds_2 :::"<=0_goto"::: ) (Num 9) ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 6) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k15_scmpds_2 :::"Divide"::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 2) "," (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 7) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Set "(" (Num 4) ($#k2_nat_1 :::"+"::: ) (Set ($#k14_scmpds_i :::"RetSP"::: ) ) ")" ) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k2_scmp_gcd :::"GBP"::: ) ) "," (Num 1) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k11_scmpds_2 :::"AddTo"::: ) "(" (Set ($#k2_scmp_gcd :::"GBP"::: ) ) "," (Num 1) "," (Num 4) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k6_scmpds_2 :::"saveIC"::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Set ($#k15_scmpds_i :::"RetIC"::: ) ) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k3_scmpds_2 :::"goto"::: ) (Set "(" ($#k4_xcmplx_0 :::"-"::: ) (Num 7) ")" ) ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 2) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 6) ")" ")" ) ")" ) ($#k3_scmpds_4 :::"';'"::: ) (Set "(" ($#k4_scmpds_2 :::"return"::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ))); begin theorem :: SCMP_GCD:8 (Bool (Set ($#k5_card_1 :::"card"::: ) (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) )) ($#r1_hidden :::"="::: ) (Num 15)) ; theorem :: SCMP_GCD:9 (Bool "for" (Set (Var "n")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k5_numbers :::"NAT"::: ) ) "holds" (Bool "(" (Bool (Set (Var "n")) ($#r1_xxreal_0 :::"<"::: ) (Num 15)) "iff" (Bool (Set (Var "n")) ($#r2_hidden :::"in"::: ) (Set ($#k9_xtuple_0 :::"dom"::: ) (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ))) ")" )) ; theorem :: SCMP_GCD:10 (Bool "(" (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Set ($#k6_numbers :::"0"::: ) )) ($#r1_hidden :::"="::: ) (Set (Set ($#k2_scmp_gcd :::"GBP"::: ) ) ($#k5_scmpds_2 :::":="::: ) (Set ($#k6_numbers :::"0"::: ) ))) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 1)) ($#r1_hidden :::"="::: ) (Set (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ($#k5_scmpds_2 :::":="::: ) (Num 7))) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 2)) ($#r1_hidden :::"="::: ) (Set ($#k6_scmpds_2 :::"saveIC"::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Set ($#k15_scmpds_i :::"RetIC"::: ) ) ")" )) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 3)) ($#r1_hidden :::"="::: ) (Set ($#k3_scmpds_2 :::"goto"::: ) (Num 2))) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 4)) ($#r1_hidden :::"="::: ) (Set ($#k2_compos_1 :::"halt"::: ) (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ))) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 5)) ($#r1_hidden :::"="::: ) (Set "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" ($#k8_scmpds_2 :::"<=0_goto"::: ) (Num 9))) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 6)) ($#r1_hidden :::"="::: ) (Set "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 6) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" )) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 7)) ($#r1_hidden :::"="::: ) (Set ($#k15_scmpds_2 :::"Divide"::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 2) "," (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" )) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 8)) ($#r1_hidden :::"="::: ) (Set "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 7) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 3) ")" )) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 9)) ($#r1_hidden :::"="::: ) (Set "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Set "(" (Num 4) ($#k2_nat_1 :::"+"::: ) (Set ($#k14_scmpds_i :::"RetSP"::: ) ) ")" ) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k2_scmp_gcd :::"GBP"::: ) ) "," (Num 1) ")" )) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 10)) ($#r1_hidden :::"="::: ) (Set ($#k11_scmpds_2 :::"AddTo"::: ) "(" (Set ($#k2_scmp_gcd :::"GBP"::: ) ) "," (Num 1) "," (Num 4) ")" )) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 11)) ($#r1_hidden :::"="::: ) (Set ($#k6_scmpds_2 :::"saveIC"::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Set ($#k15_scmpds_i :::"RetIC"::: ) ) ")" )) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 12)) ($#r1_hidden :::"="::: ) (Set ($#k3_scmpds_2 :::"goto"::: ) (Set "(" ($#k4_xcmplx_0 :::"-"::: ) (Num 7) ")" ))) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 13)) ($#r1_hidden :::"="::: ) (Set "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 2) ")" ($#k16_scmpds_2 :::":="::: ) "(" (Set ($#k3_scmp_gcd :::"SBP"::: ) ) "," (Num 6) ")" )) & (Bool (Set (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#k1_funct_1 :::"."::: ) (Num 14)) ($#r1_hidden :::"="::: ) (Set ($#k4_scmpds_2 :::"return"::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ))) ")" ) ; theorem :: SCMP_GCD:11 (Bool "for" (Set (Var "P")) "being" ($#m1_hidden :::"Instruction-Sequence":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) "st" (Bool (Bool (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#r1_tarski :::"c="::: ) (Set (Var "P")))) "holds" (Bool "for" (Set (Var "s")) "being" (Set ($#k6_numbers :::"0"::: ) ) ($#v5_memstr_0 :::"-started"::: ) ($#m1_hidden :::"State":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) "holds" (Bool "(" (Bool (Set ($#k5_memstr_0 :::"IC"::: ) (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Num 4) ")" ")" )) ($#r1_hidden :::"="::: ) (Num 5)) & (Bool (Set (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Num 4) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set ($#k2_scmp_gcd :::"GBP"::: ) )) ($#r1_hidden :::"="::: ) (Set ($#k6_numbers :::"0"::: ) )) & (Bool (Set (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Num 4) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) )) ($#r1_hidden :::"="::: ) (Num 7)) & (Bool (Set (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Num 4) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Set "(" (Num 7) ($#k2_nat_1 :::"+"::: ) (Set ($#k15_scmpds_i :::"RetIC"::: ) ) ")" ) ")" )) ($#r1_hidden :::"="::: ) (Num 2)) & (Bool (Set (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Num 4) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Num 9) ")" )) ($#r1_hidden :::"="::: ) (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Num 9) ")" ))) & (Bool (Set (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Num 4) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Num 10) ")" )) ($#r1_hidden :::"="::: ) (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Num 10) ")" ))) ")" ))) ; theorem :: SCMP_GCD:12 (Bool "for" (Set (Var "P")) "being" ($#m1_hidden :::"Instruction-Sequence":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) (Bool "for" (Set (Var "s")) "being" ($#m1_hidden :::"State":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) "st" (Bool (Bool (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#r1_tarski :::"c="::: ) (Set (Var "P"))) & (Bool (Set ($#k5_memstr_0 :::"IC"::: ) (Set (Var "s"))) ($#r1_hidden :::"="::: ) (Num 5)) & (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) )) ($#r1_xxreal_0 :::">"::: ) (Set ($#k6_numbers :::"0"::: ) )) & (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k2_scmp_gcd :::"GBP"::: ) )) ($#r1_hidden :::"="::: ) (Set ($#k6_numbers :::"0"::: ) )) & (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) "," (Num 3) ")" ")" )) ($#r1_xxreal_0 :::">="::: ) (Set ($#k6_numbers :::"0"::: ) )) & (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) "," (Num 2) ")" ")" )) ($#r1_xxreal_0 :::">="::: ) (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) "," (Num 3) ")" ")" )))) "holds" (Bool "ex" (Set (Var "n")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k5_numbers :::"NAT"::: ) ) "st" (Bool "(" (Bool (Set ($#k3_extpro_1 :::"CurInstr"::: ) "(" (Set (Var "P")) "," (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Set (Var "n")) ")" ")" ) ")" ) ($#r1_hidden :::"="::: ) (Set ($#k4_scmpds_2 :::"return"::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ))) & (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) )) ($#r1_hidden :::"="::: ) (Set (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Set (Var "n")) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ))) & (Bool (Set (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Set (Var "n")) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) "," (Num 2) ")" ")" )) ($#r1_hidden :::"="::: ) (Set (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) "," (Num 2) ")" ")" ) ")" ) ($#k3_int_2 :::"gcd"::: ) (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) "," (Num 3) ")" ")" ) ")" ))) & (Bool "(" "for" (Set (Var "j")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k5_numbers :::"NAT"::: ) ) "st" (Bool (Bool (Num 1) ($#r1_xxreal_0 :::"<"::: ) (Set (Var "j"))) & (Bool (Set (Var "j")) ($#r1_xxreal_0 :::"<="::: ) (Set (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) ($#k2_xcmplx_0 :::"+"::: ) (Num 1)))) "holds" (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Set (Var "j")) ")" )) ($#r1_hidden :::"="::: ) (Set (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Set (Var "n")) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Set (Var "j")) ")" ))) ")" ) ")" )))) ; theorem :: SCMP_GCD:13 (Bool "for" (Set (Var "P")) "being" ($#m1_hidden :::"Instruction-Sequence":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) (Bool "for" (Set (Var "s")) "being" ($#m1_hidden :::"State":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) "st" (Bool (Bool (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#r1_tarski :::"c="::: ) (Set (Var "P"))) & (Bool (Set ($#k5_memstr_0 :::"IC"::: ) (Set (Var "s"))) ($#r1_hidden :::"="::: ) (Num 5)) & (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) )) ($#r1_xxreal_0 :::">"::: ) (Set ($#k6_numbers :::"0"::: ) )) & (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k2_scmp_gcd :::"GBP"::: ) )) ($#r1_hidden :::"="::: ) (Set ($#k6_numbers :::"0"::: ) )) & (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) "," (Num 3) ")" ")" )) ($#r1_xxreal_0 :::">="::: ) (Set ($#k6_numbers :::"0"::: ) )) & (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) "," (Num 2) ")" ")" )) ($#r1_xxreal_0 :::">="::: ) (Set ($#k6_numbers :::"0"::: ) ))) "holds" (Bool "ex" (Set (Var "n")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k5_numbers :::"NAT"::: ) ) "st" (Bool "(" (Bool (Set ($#k3_extpro_1 :::"CurInstr"::: ) "(" (Set (Var "P")) "," (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Set (Var "n")) ")" ")" ) ")" ) ($#r1_hidden :::"="::: ) (Set ($#k4_scmpds_2 :::"return"::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ))) & (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) )) ($#r1_hidden :::"="::: ) (Set (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Set (Var "n")) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ))) & (Bool (Set (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Set (Var "n")) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) "," (Num 2) ")" ")" )) ($#r1_hidden :::"="::: ) (Set (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) "," (Num 2) ")" ")" ) ")" ) ($#k3_int_2 :::"gcd"::: ) (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_scmpds_2 :::"DataLoc"::: ) "(" (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) "," (Num 3) ")" ")" ) ")" ))) & (Bool "(" "for" (Set (Var "j")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k5_numbers :::"NAT"::: ) ) "st" (Bool (Bool (Num 1) ($#r1_xxreal_0 :::"<"::: ) (Set (Var "j"))) & (Bool (Set (Var "j")) ($#r1_xxreal_0 :::"<="::: ) (Set (Set "(" (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set ($#k3_scmp_gcd :::"SBP"::: ) ) ")" ) ($#k2_xcmplx_0 :::"+"::: ) (Num 1)))) "holds" (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Set (Var "j")) ")" )) ($#r1_hidden :::"="::: ) (Set (Set "(" ($#k5_extpro_1 :::"Comput"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) "," (Set (Var "n")) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Set (Var "j")) ")" ))) ")" ) ")" )))) ; begin theorem :: SCMP_GCD:14 (Bool "for" (Set (Var "P")) "being" ($#m1_hidden :::"Instruction-Sequence":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) (Bool "for" (Set (Var "s")) "being" (Set ($#k6_numbers :::"0"::: ) ) ($#v5_memstr_0 :::"-started"::: ) ($#m1_hidden :::"State":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) "st" (Bool (Bool (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#r1_tarski :::"c="::: ) (Set (Var "P")))) "holds" (Bool "for" (Set (Var "x")) "," (Set (Var "y")) "being" ($#m1_hidden :::"Integer":::) "st" (Bool (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Num 9) ")" )) ($#r1_hidden :::"="::: ) (Set (Var "x"))) & (Bool (Set (Set (Var "s")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Num 10) ")" )) ($#r1_hidden :::"="::: ) (Set (Var "y"))) & (Bool (Set (Var "x")) ($#r1_xxreal_0 :::">="::: ) (Set ($#k6_numbers :::"0"::: ) )) & (Bool (Set (Var "y")) ($#r1_xxreal_0 :::">="::: ) (Set ($#k6_numbers :::"0"::: ) ))) "holds" (Bool (Set (Set "(" ($#k6_extpro_1 :::"Result"::: ) "(" (Set (Var "P")) "," (Set (Var "s")) ")" ")" ) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Num 9) ")" )) ($#r1_hidden :::"="::: ) (Set (Set (Var "x")) ($#k3_int_2 :::"gcd"::: ) (Set (Var "y"))))))) ; begin theorem :: SCMP_GCD:15 (Bool "for" (Set (Var "p")) "being" ($#m1_hidden :::"FinPartState":::) "of" (Set ($#k1_scmpds_2 :::"SCMPDS"::: ) ) (Bool "for" (Set (Var "x")) "," (Set (Var "y")) "being" ($#m1_hidden :::"Integer":::) "st" (Bool (Bool (Set (Var "y")) ($#r1_xxreal_0 :::">="::: ) (Set ($#k6_numbers :::"0"::: ) )) & (Bool (Set (Var "x")) ($#r1_xxreal_0 :::">="::: ) (Set (Var "y"))) & (Bool (Set (Var "p")) ($#r1_hidden :::"="::: ) (Set "(" (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Num 9) ")" ) "," (Set "(" ($#k1_scmp_gcd :::"intpos"::: ) (Num 10) ")" ) ")" ($#k4_funct_4 :::"-->"::: ) "(" (Set (Var "x")) "," (Set (Var "y")) ")" ))) "holds" (Bool (Set ($#k8_memstr_0 :::"Initialize"::: ) (Set (Var "p"))) "is" (Set ($#k4_scmp_gcd :::"GCD-Algorithm"::: ) ) ($#v4_extpro_1 :::"-autonomic"::: ) ))) ;