:: OSALG_4 semantic presentation begin registrationlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); cluster ($#~v1_xboole_0 "non" ($#v1_xboole_0 :::"empty"::: ) ) ($#v1_relat_1 :::"Relation-like"::: ) (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" "R") ($#v4_relat_1 :::"-defined"::: ) ($#v1_funct_1 :::"Function-like"::: ) ($#v1_partfun1 :::"total"::: ) ($#v2_funcop_1 :::"Relation-yielding"::: ) ($#v11_osalg_1 :::"order-sorted"::: ) for ($#m1_hidden :::"set"::: ) ; end; definitionlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); let "A", "B" be ($#m1_hidden :::"ManySortedSet":::) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Const "R"))); let "IT" be ($#m1_msualg_4 :::"ManySortedRelation"::: ) "of" (Set (Const "A")) "," (Set (Const "B")); attr "IT" is :::"os-compatible"::: means :: OSALG_4:def 1 (Bool "for" (Set (Var "s1")) "," (Set (Var "s2")) "being" ($#m1_subset_1 :::"Element":::) "of" "R" "st" (Bool (Bool (Set (Var "s1")) ($#r3_orders_2 :::"<="::: ) (Set (Var "s2")))) "holds" (Bool "for" (Set (Var "x")) "," (Set (Var "y")) "being" ($#m1_hidden :::"set"::: ) "st" (Bool (Bool (Set (Var "x")) ($#r2_hidden :::"in"::: ) (Set "A" ($#k1_funct_1 :::"."::: ) (Set (Var "s1")))) & (Bool (Set (Var "y")) ($#r2_hidden :::"in"::: ) (Set "B" ($#k1_funct_1 :::"."::: ) (Set (Var "s1"))))) "holds" (Bool "(" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set "IT" ($#k1_msualg_4 :::"."::: ) (Set (Var "s1")))) "iff" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set "IT" ($#k1_msualg_4 :::"."::: ) (Set (Var "s2")))) ")" ))); end; :: deftheorem defines :::"os-compatible"::: OSALG_4:def 1 : (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "A")) "," (Set (Var "B")) "being" ($#m1_hidden :::"ManySortedSet":::) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Var "R"))) (Bool "for" (Set (Var "IT")) "being" ($#m1_msualg_4 :::"ManySortedRelation"::: ) "of" (Set (Var "A")) "," (Set (Var "B")) "holds" (Bool "(" (Bool (Set (Var "IT")) "is" ($#v1_osalg_4 :::"os-compatible"::: ) ) "iff" (Bool "for" (Set (Var "s1")) "," (Set (Var "s2")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) "st" (Bool (Bool (Set (Var "s1")) ($#r3_orders_2 :::"<="::: ) (Set (Var "s2")))) "holds" (Bool "for" (Set (Var "x")) "," (Set (Var "y")) "being" ($#m1_hidden :::"set"::: ) "st" (Bool (Bool (Set (Var "x")) ($#r2_hidden :::"in"::: ) (Set (Set (Var "A")) ($#k1_funct_1 :::"."::: ) (Set (Var "s1")))) & (Bool (Set (Var "y")) ($#r2_hidden :::"in"::: ) (Set (Set (Var "B")) ($#k1_funct_1 :::"."::: ) (Set (Var "s1"))))) "holds" (Bool "(" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set (Set (Var "IT")) ($#k1_msualg_4 :::"."::: ) (Set (Var "s1")))) "iff" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set (Set (Var "IT")) ($#k1_msualg_4 :::"."::: ) (Set (Var "s2")))) ")" ))) ")" )))); registrationlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); let "A", "B" be ($#m1_hidden :::"ManySortedSet":::) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Const "R"))); cluster ($#~v1_xboole_0 "non" ($#v1_xboole_0 :::"empty"::: ) ) ($#v1_relat_1 :::"Relation-like"::: ) (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" "R") ($#v4_relat_1 :::"-defined"::: ) ($#v1_funct_1 :::"Function-like"::: ) ($#v1_partfun1 :::"total"::: ) ($#v2_funcop_1 :::"Relation-yielding"::: ) ($#v1_osalg_4 :::"os-compatible"::: ) for ($#m1_msualg_4 :::"ManySortedRelation"::: ) "of" "A" "," "B"; end; definitionlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); let "A", "B" be ($#m1_hidden :::"ManySortedSet":::) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Const "R"))); mode OrderSortedRelation of "A" "," "B" is ($#v1_osalg_4 :::"os-compatible"::: ) ($#m1_msualg_4 :::"ManySortedRelation"::: ) "of" "A" "," "B"; end; theorem :: OSALG_4:1 (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "A")) "," (Set (Var "B")) "being" ($#m1_hidden :::"ManySortedSet":::) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Var "R"))) (Bool "for" (Set (Var "OR")) "being" ($#m1_msualg_4 :::"ManySortedRelation"::: ) "of" (Set (Var "A")) "," (Set (Var "B")) "st" (Bool (Bool (Set (Var "OR")) "is" ($#v1_osalg_4 :::"os-compatible"::: ) )) "holds" (Bool (Set (Var "OR")) "is" ($#m1_hidden :::"OrderSortedSet":::) "of" (Set (Var "R")))))) ; registrationlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); let "A", "B" be ($#m1_hidden :::"ManySortedSet":::) "of" (Set (Const "R")); cluster ($#v1_osalg_4 :::"os-compatible"::: ) -> ($#v11_osalg_1 :::"order-sorted"::: ) for ($#m1_msualg_4 :::"ManySortedRelation"::: ) "of" "A" "," "B"; end; definitionlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); let "A" be ($#m1_hidden :::"ManySortedSet":::) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Const "R"))); mode OrderSortedRelation of "A" is ($#m1_msualg_4 :::"OrderSortedRelation":::) "of" "A" "," "A"; end; definitionlet "S" be ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); mode :::"OrderSortedRelation"::: "of" "U1" -> ($#m1_msualg_4 :::"ManySortedRelation":::) "of" "U1" means :: OSALG_4:def 2 (Bool it "is" ($#v1_osalg_4 :::"os-compatible"::: ) ); end; :: deftheorem defines :::"OrderSortedRelation"::: OSALG_4:def 2 : (Bool "for" (Set (Var "S")) "being" ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "b3")) "being" ($#m1_msualg_4 :::"ManySortedRelation":::) "of" (Set (Var "U1")) "holds" (Bool "(" (Bool (Set (Var "b3")) "is" ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Var "U1"))) "iff" (Bool (Set (Var "b3")) "is" ($#v1_osalg_4 :::"os-compatible"::: ) ) ")" )))); registrationlet "S" be ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); cluster ($#~v1_xboole_0 "non" ($#v1_xboole_0 :::"empty"::: ) ) ($#v1_relat_1 :::"Relation-like"::: ) (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" "S") ($#v4_relat_1 :::"-defined"::: ) ($#v1_funct_1 :::"Function-like"::: ) ($#v1_partfun1 :::"total"::: ) ($#v2_funcop_1 :::"Relation-yielding"::: ) ($#v2_msualg_4 :::"MSEquivalence-like"::: ) for ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" "U1"; end; registrationlet "S" be ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); cluster ($#~v1_xboole_0 "non" ($#v1_xboole_0 :::"empty"::: ) ) ($#v1_relat_1 :::"Relation-like"::: ) (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" "S") ($#v4_relat_1 :::"-defined"::: ) ($#v1_funct_1 :::"Function-like"::: ) ($#v1_partfun1 :::"total"::: ) ($#v2_funcop_1 :::"Relation-yielding"::: ) ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#v3_msualg_4 :::"MSCongruence-like"::: ) for ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" "U1"; end; definitionlet "S" be ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); mode OSCongruence of "U1" is ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#v3_msualg_4 :::"MSCongruence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" "U1"; end; definitionlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); func :::"Path_Rel"::: "R" -> ($#m1_subset_1 :::"Equivalence_Relation":::) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" "R") means :: OSALG_4:def 3 (Bool "for" (Set (Var "x")) "," (Set (Var "y")) "being" ($#m1_hidden :::"set"::: ) "holds" (Bool "(" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) it) "iff" (Bool "(" (Bool (Set (Var "x")) ($#r2_hidden :::"in"::: ) (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" "R")) & (Bool (Set (Var "y")) ($#r2_hidden :::"in"::: ) (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" "R")) & (Bool "ex" (Set (Var "p")) "being" ($#m2_finseq_1 :::"FinSequence"::: ) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" "R") "st" (Bool "(" (Bool (Num 1) ($#r1_xxreal_0 :::"<"::: ) (Set ($#k3_finseq_1 :::"len"::: ) (Set (Var "p")))) & (Bool (Set (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Num 1)) ($#r1_hidden :::"="::: ) (Set (Var "x"))) & (Bool (Set (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k3_finseq_1 :::"len"::: ) (Set (Var "p")) ")" )) ($#r1_hidden :::"="::: ) (Set (Var "y"))) & (Bool "(" "for" (Set (Var "n")) "being" ($#m1_hidden :::"Nat":::) "st" (Bool (Bool (Num 2) ($#r1_xxreal_0 :::"<="::: ) (Set (Var "n"))) & (Bool (Set (Var "n")) ($#r1_xxreal_0 :::"<="::: ) (Set ($#k3_finseq_1 :::"len"::: ) (Set (Var "p")))) & (Bool (Bool "not" (Set ($#k4_tarski :::"["::: ) (Set "(" (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Set (Var "n")) ")" ) "," (Set "(" (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Set "(" (Set (Var "n")) ($#k6_xcmplx_0 :::"-"::: ) (Num 1) ")" ) ")" ) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set "the" ($#u1_orders_2 :::"InternalRel"::: ) "of" "R")))) "holds" (Bool (Set ($#k4_tarski :::"["::: ) (Set "(" (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Set "(" (Set (Var "n")) ($#k6_xcmplx_0 :::"-"::: ) (Num 1) ")" ) ")" ) "," (Set "(" (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Set (Var "n")) ")" ) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set "the" ($#u1_orders_2 :::"InternalRel"::: ) "of" "R")) ")" ) ")" )) ")" ) ")" )); end; :: deftheorem defines :::"Path_Rel"::: OSALG_4:def 3 : (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "b2")) "being" ($#m1_subset_1 :::"Equivalence_Relation":::) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Var "R"))) "holds" (Bool "(" (Bool (Set (Var "b2")) ($#r1_hidden :::"="::: ) (Set ($#k1_osalg_4 :::"Path_Rel"::: ) (Set (Var "R")))) "iff" (Bool "for" (Set (Var "x")) "," (Set (Var "y")) "being" ($#m1_hidden :::"set"::: ) "holds" (Bool "(" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set (Var "b2"))) "iff" (Bool "(" (Bool (Set (Var "x")) ($#r2_hidden :::"in"::: ) (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Var "R")))) & (Bool (Set (Var "y")) ($#r2_hidden :::"in"::: ) (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Var "R")))) & (Bool "ex" (Set (Var "p")) "being" ($#m2_finseq_1 :::"FinSequence"::: ) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Var "R"))) "st" (Bool "(" (Bool (Num 1) ($#r1_xxreal_0 :::"<"::: ) (Set ($#k3_finseq_1 :::"len"::: ) (Set (Var "p")))) & (Bool (Set (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Num 1)) ($#r1_hidden :::"="::: ) (Set (Var "x"))) & (Bool (Set (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k3_finseq_1 :::"len"::: ) (Set (Var "p")) ")" )) ($#r1_hidden :::"="::: ) (Set (Var "y"))) & (Bool "(" "for" (Set (Var "n")) "being" ($#m1_hidden :::"Nat":::) "st" (Bool (Bool (Num 2) ($#r1_xxreal_0 :::"<="::: ) (Set (Var "n"))) & (Bool (Set (Var "n")) ($#r1_xxreal_0 :::"<="::: ) (Set ($#k3_finseq_1 :::"len"::: ) (Set (Var "p")))) & (Bool (Bool "not" (Set ($#k4_tarski :::"["::: ) (Set "(" (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Set (Var "n")) ")" ) "," (Set "(" (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Set "(" (Set (Var "n")) ($#k6_xcmplx_0 :::"-"::: ) (Num 1) ")" ) ")" ) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set "the" ($#u1_orders_2 :::"InternalRel"::: ) "of" (Set (Var "R")))))) "holds" (Bool (Set ($#k4_tarski :::"["::: ) (Set "(" (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Set "(" (Set (Var "n")) ($#k6_xcmplx_0 :::"-"::: ) (Num 1) ")" ) ")" ) "," (Set "(" (Set (Var "p")) ($#k1_funct_1 :::"."::: ) (Set (Var "n")) ")" ) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set "the" ($#u1_orders_2 :::"InternalRel"::: ) "of" (Set (Var "R")))) ")" ) ")" )) ")" ) ")" )) ")" ))); theorem :: OSALG_4:2 (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "s1")) "," (Set (Var "s2")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) "st" (Bool (Bool (Set (Var "s1")) ($#r3_orders_2 :::"<="::: ) (Set (Var "s2")))) "holds" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "s1")) "," (Set (Var "s2")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set ($#k1_osalg_4 :::"Path_Rel"::: ) (Set (Var "R")))))) ; definitionlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); let "s1", "s2" be ($#m1_subset_1 :::"Element":::) "of" (Set (Const "R")); pred "s1" :::"~="::: "s2" means :: OSALG_4:def 4 (Bool (Set ($#k4_tarski :::"["::: ) "s1" "," "s2" ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set ($#k1_osalg_4 :::"Path_Rel"::: ) "R")); reflexivity (Bool "for" (Set (Var "s1")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Const "R")) "holds" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "s1")) "," (Set (Var "s1")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set ($#k1_osalg_4 :::"Path_Rel"::: ) (Set (Const "R"))))) ; symmetry (Bool "for" (Set (Var "s1")) "," (Set (Var "s2")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Const "R")) "st" (Bool (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "s1")) "," (Set (Var "s2")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set ($#k1_osalg_4 :::"Path_Rel"::: ) (Set (Const "R"))))) "holds" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "s2")) "," (Set (Var "s1")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set ($#k1_osalg_4 :::"Path_Rel"::: ) (Set (Const "R"))))) ; end; :: deftheorem defines :::"~="::: OSALG_4:def 4 : (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "s1")) "," (Set (Var "s2")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) "holds" (Bool "(" (Bool (Set (Var "s1")) ($#r1_osalg_4 :::"~="::: ) (Set (Var "s2"))) "iff" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "s1")) "," (Set (Var "s2")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set ($#k1_osalg_4 :::"Path_Rel"::: ) (Set (Var "R")))) ")" ))); theorem :: OSALG_4:3 (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "s1")) "," (Set (Var "s2")) "," (Set (Var "s3")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) "st" (Bool (Bool (Set (Var "s1")) ($#r1_osalg_4 :::"~="::: ) (Set (Var "s2"))) & (Bool (Set (Var "s2")) ($#r1_osalg_4 :::"~="::: ) (Set (Var "s3")))) "holds" (Bool (Set (Var "s1")) ($#r1_osalg_4 :::"~="::: ) (Set (Var "s3"))))) ; definitionlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); func :::"Components"::: "R" -> ($#~v1_xboole_0 "non" ($#v1_xboole_0 :::"empty"::: ) ) ($#m1_subset_1 :::"Subset-Family":::) "of" "R" equals :: OSALG_4:def 5 (Set ($#k8_eqrel_1 :::"Class"::: ) (Set "(" ($#k1_osalg_4 :::"Path_Rel"::: ) "R" ")" )); end; :: deftheorem defines :::"Components"::: OSALG_4:def 5 : (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) "holds" (Bool (Set ($#k2_osalg_4 :::"Components"::: ) (Set (Var "R"))) ($#r1_hidden :::"="::: ) (Set ($#k8_eqrel_1 :::"Class"::: ) (Set "(" ($#k1_osalg_4 :::"Path_Rel"::: ) (Set (Var "R")) ")" )))); registrationlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); cluster -> ($#~v1_xboole_0 "non" ($#v1_xboole_0 :::"empty"::: ) ) for ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k2_osalg_4 :::"Components"::: ) "R"); end; definitionlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); mode Component of "R" is ($#m2_subset_1 :::"Element"::: ) "of" (Set ($#k2_osalg_4 :::"Components"::: ) "R"); end; definitionlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); let "s1" be ($#m1_subset_1 :::"Element":::) "of" (Set (Const "R")); func :::"CComp"::: "s1" -> ($#m2_subset_1 :::"Component":::) "of" "R" equals :: OSALG_4:def 6 (Set ($#k6_eqrel_1 :::"Class"::: ) "(" (Set "(" ($#k1_osalg_4 :::"Path_Rel"::: ) "R" ")" ) "," "s1" ")" ); end; :: deftheorem defines :::"CComp"::: OSALG_4:def 6 : (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "s1")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) "holds" (Bool (Set ($#k3_osalg_4 :::"CComp"::: ) (Set (Var "s1"))) ($#r1_hidden :::"="::: ) (Set ($#k6_eqrel_1 :::"Class"::: ) "(" (Set "(" ($#k1_osalg_4 :::"Path_Rel"::: ) (Set (Var "R")) ")" ) "," (Set (Var "s1")) ")" )))); theorem :: OSALG_4:4 (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "s1")) "," (Set (Var "s2")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) "st" (Bool (Bool (Set (Var "s1")) ($#r3_orders_2 :::"<="::: ) (Set (Var "s2")))) "holds" (Bool (Set ($#k3_osalg_4 :::"CComp"::: ) (Set (Var "s1"))) ($#r1_hidden :::"="::: ) (Set ($#k3_osalg_4 :::"CComp"::: ) (Set (Var "s2")))))) ; definitionlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); let "A" be ($#m1_hidden :::"ManySortedSet":::) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Const "R"))); let "C" be ($#m2_subset_1 :::"Component":::) "of" (Set (Const "R")); func "A" :::"-carrier_of"::: "C" -> ($#m1_hidden :::"set"::: ) equals :: OSALG_4:def 7 (Set ($#k3_tarski :::"union"::: ) "{" (Set "(" "A" ($#k1_funct_1 :::"."::: ) (Set (Var "s")) ")" ) where s "is" ($#m1_subset_1 :::"Element":::) "of" "R" : (Bool (Set (Var "s")) ($#r2_hidden :::"in"::: ) "C") "}" ); end; :: deftheorem defines :::"-carrier_of"::: OSALG_4:def 7 : (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "A")) "being" ($#m1_hidden :::"ManySortedSet":::) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Var "R"))) (Bool "for" (Set (Var "C")) "being" ($#m2_subset_1 :::"Component":::) "of" (Set (Var "R")) "holds" (Bool (Set (Set (Var "A")) ($#k4_osalg_4 :::"-carrier_of"::: ) (Set (Var "C"))) ($#r1_hidden :::"="::: ) (Set ($#k3_tarski :::"union"::: ) "{" (Set "(" (Set (Var "A")) ($#k1_funct_1 :::"."::: ) (Set (Var "s")) ")" ) where s "is" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) : (Bool (Set (Var "s")) ($#r2_hidden :::"in"::: ) (Set (Var "C"))) "}" ))))); theorem :: OSALG_4:5 (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "A")) "being" ($#m1_hidden :::"ManySortedSet":::) "of" (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" (Set (Var "R"))) (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) (Bool "for" (Set (Var "x")) "being" ($#m1_hidden :::"set"::: ) "st" (Bool (Bool (Set (Var "x")) ($#r2_hidden :::"in"::: ) (Set (Set (Var "A")) ($#k1_funct_1 :::"."::: ) (Set (Var "s"))))) "holds" (Bool (Set (Var "x")) ($#r2_hidden :::"in"::: ) (Set (Set (Var "A")) ($#k4_osalg_4 :::"-carrier_of"::: ) (Set "(" ($#k3_osalg_4 :::"CComp"::: ) (Set (Var "s")) ")" ))))))) ; definitionlet "R" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::); attr "R" is :::"locally_directed"::: means :: OSALG_4:def 8 (Bool "for" (Set (Var "C")) "being" ($#m2_subset_1 :::"Component":::) "of" "R" "holds" (Bool (Set (Var "C")) "is" ($#v1_waybel_0 :::"directed"::: ) )); end; :: deftheorem defines :::"locally_directed"::: OSALG_4:def 8 : (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#l1_orders_2 :::"Poset":::) "holds" (Bool "(" (Bool (Set (Var "R")) "is" ($#v2_osalg_4 :::"locally_directed"::: ) ) "iff" (Bool "for" (Set (Var "C")) "being" ($#m2_subset_1 :::"Component":::) "of" (Set (Var "R")) "holds" (Bool (Set (Var "C")) "is" ($#v1_waybel_0 :::"directed"::: ) )) ")" )); theorem :: OSALG_4:6 (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#v1_orders_3 :::"discrete"::: ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "x")) "," (Set (Var "y")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) "st" (Bool (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set ($#k1_osalg_4 :::"Path_Rel"::: ) (Set (Var "R"))))) "holds" (Bool (Set (Var "x")) ($#r1_hidden :::"="::: ) (Set (Var "y"))))) ; theorem :: OSALG_4:7 (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#v1_orders_3 :::"discrete"::: ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "C")) "being" ($#m2_subset_1 :::"Component":::) "of" (Set (Var "R")) (Bool "ex" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) "st" (Bool (Set (Var "C")) ($#r1_hidden :::"="::: ) (Set ($#k1_tarski :::"{"::: ) (Set (Var "x")) ($#k1_tarski :::"}"::: ) ))))) ; theorem :: OSALG_4:8 (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#v1_orders_3 :::"discrete"::: ) ($#l1_orders_2 :::"Poset":::) "holds" (Bool (Set (Var "R")) "is" ($#v2_osalg_4 :::"locally_directed"::: ) )) ; registration cluster ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#v3_orders_2 :::"reflexive"::: ) ($#v4_orders_2 :::"transitive"::: ) ($#v5_orders_2 :::"antisymmetric"::: ) ($#v2_osalg_4 :::"locally_directed"::: ) for ($#l1_orders_2 :::"RelStr"::: ) ; end; registration cluster ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#~v11_struct_0 "non" ($#v11_struct_0 :::"void"::: ) ) bbbadV14_STRUCT_0() ($#v3_orders_2 :::"reflexive"::: ) ($#v4_orders_2 :::"transitive"::: ) ($#v5_orders_2 :::"antisymmetric"::: ) ($#v4_osalg_1 :::"order-sorted"::: ) ($#v5_osalg_1 :::"discernable"::: ) ($#v2_osalg_4 :::"locally_directed"::: ) for ($#l3_osalg_1 :::"OverloadedRSSign"::: ) ; end; registration cluster ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#v3_orders_2 :::"reflexive"::: ) ($#v4_orders_2 :::"transitive"::: ) ($#v5_orders_2 :::"antisymmetric"::: ) ($#v1_orders_3 :::"discrete"::: ) -> ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#v2_osalg_4 :::"locally_directed"::: ) for ($#l1_orders_2 :::"RelStr"::: ) ; end; registrationlet "S" be ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#v2_osalg_4 :::"locally_directed"::: ) ($#l1_orders_2 :::"Poset":::); cluster -> ($#v1_waybel_0 :::"directed"::: ) for ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k2_osalg_4 :::"Components"::: ) "S"); end; theorem :: OSALG_4:9 (Bool (Set ($#k1_xboole_0 :::"{}"::: ) ) "is" ($#m1_subset_1 :::"Equivalence_Relation":::) "of" (Set ($#k1_xboole_0 :::"{}"::: ) )) ; definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "A" be ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "E" be ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Const "A")); let "C" be ($#m2_subset_1 :::"Component":::) "of" (Set (Const "S")); func :::"CompClass"::: "(" "E" "," "C" ")" -> ($#m1_subset_1 :::"Equivalence_Relation":::) "of" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "A") ($#k4_osalg_4 :::"-carrier_of"::: ) "C" ")" ) means :: OSALG_4:def 9 (Bool "for" (Set (Var "x")) "," (Set (Var "y")) "being" ($#m1_hidden :::"set"::: ) "holds" (Bool "(" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) it) "iff" (Bool "ex" (Set (Var "s1")) "being" ($#m1_subset_1 :::"Element":::) "of" "S" "st" (Bool "(" (Bool (Set (Var "s1")) ($#r2_hidden :::"in"::: ) "C") & (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set "E" ($#k2_msualg_4 :::"."::: ) (Set (Var "s1")))) ")" )) ")" )); end; :: deftheorem defines :::"CompClass"::: OSALG_4:def 9 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "A")) "being" ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "E")) "being" ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Var "A")) (Bool "for" (Set (Var "C")) "being" ($#m2_subset_1 :::"Component":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "b5")) "being" ($#m1_subset_1 :::"Equivalence_Relation":::) "of" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "A"))) ($#k4_osalg_4 :::"-carrier_of"::: ) (Set (Var "C")) ")" ) "holds" (Bool "(" (Bool (Set (Var "b5")) ($#r1_hidden :::"="::: ) (Set ($#k5_osalg_4 :::"CompClass"::: ) "(" (Set (Var "E")) "," (Set (Var "C")) ")" )) "iff" (Bool "for" (Set (Var "x")) "," (Set (Var "y")) "being" ($#m1_hidden :::"set"::: ) "holds" (Bool "(" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set (Var "b5"))) "iff" (Bool "ex" (Set (Var "s1")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) "st" (Bool "(" (Bool (Set (Var "s1")) ($#r2_hidden :::"in"::: ) (Set (Var "C"))) & (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set (Set (Var "E")) ($#k2_msualg_4 :::"."::: ) (Set (Var "s1")))) ")" )) ")" )) ")" )))))); definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "A" be ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "E" be ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Const "A")); let "s1" be ($#m1_subset_1 :::"Element":::) "of" (Set (Const "S")); func :::"OSClass"::: "(" "E" "," "s1" ")" -> ($#m1_subset_1 :::"Subset":::) "of" (Set "(" ($#k8_eqrel_1 :::"Class"::: ) (Set "(" ($#k5_osalg_4 :::"CompClass"::: ) "(" "E" "," (Set "(" ($#k3_osalg_4 :::"CComp"::: ) "s1" ")" ) ")" ")" ) ")" ) means :: OSALG_4:def 10 (Bool "for" (Set (Var "z")) "being" ($#m1_hidden :::"set"::: ) "holds" (Bool "(" (Bool (Set (Var "z")) ($#r2_hidden :::"in"::: ) it) "iff" (Bool "ex" (Set (Var "x")) "being" ($#m1_hidden :::"set"::: ) "st" (Bool "(" (Bool (Set (Var "x")) ($#r2_hidden :::"in"::: ) (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "A") ($#k1_funct_1 :::"."::: ) "s1")) & (Bool (Set (Var "z")) ($#r1_hidden :::"="::: ) (Set ($#k6_eqrel_1 :::"Class"::: ) "(" (Set "(" ($#k5_osalg_4 :::"CompClass"::: ) "(" "E" "," (Set "(" ($#k3_osalg_4 :::"CComp"::: ) "s1" ")" ) ")" ")" ) "," (Set (Var "x")) ")" )) ")" )) ")" )); end; :: deftheorem defines :::"OSClass"::: OSALG_4:def 10 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "A")) "being" ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "E")) "being" ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Var "A")) (Bool "for" (Set (Var "s1")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "b5")) "being" ($#m1_subset_1 :::"Subset":::) "of" (Set "(" ($#k8_eqrel_1 :::"Class"::: ) (Set "(" ($#k5_osalg_4 :::"CompClass"::: ) "(" (Set (Var "E")) "," (Set "(" ($#k3_osalg_4 :::"CComp"::: ) (Set (Var "s1")) ")" ) ")" ")" ) ")" ) "holds" (Bool "(" (Bool (Set (Var "b5")) ($#r1_hidden :::"="::: ) (Set ($#k6_osalg_4 :::"OSClass"::: ) "(" (Set (Var "E")) "," (Set (Var "s1")) ")" )) "iff" (Bool "for" (Set (Var "z")) "being" ($#m1_hidden :::"set"::: ) "holds" (Bool "(" (Bool (Set (Var "z")) ($#r2_hidden :::"in"::: ) (Set (Var "b5"))) "iff" (Bool "ex" (Set (Var "x")) "being" ($#m1_hidden :::"set"::: ) "st" (Bool "(" (Bool (Set (Var "x")) ($#r2_hidden :::"in"::: ) (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "A"))) ($#k1_funct_1 :::"."::: ) (Set (Var "s1")))) & (Bool (Set (Var "z")) ($#r1_hidden :::"="::: ) (Set ($#k6_eqrel_1 :::"Class"::: ) "(" (Set "(" ($#k5_osalg_4 :::"CompClass"::: ) "(" (Set (Var "E")) "," (Set "(" ($#k3_osalg_4 :::"CComp"::: ) (Set (Var "s1")) ")" ) ")" ")" ) "," (Set (Var "x")) ")" )) ")" )) ")" )) ")" )))))); registrationlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "A" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "E" be ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Const "A")); let "s1" be ($#m1_subset_1 :::"Element":::) "of" (Set (Const "S")); cluster (Set ($#k6_osalg_4 :::"OSClass"::: ) "(" "E" "," "s1" ")" ) -> ($#~v1_xboole_0 "non" ($#v1_xboole_0 :::"empty"::: ) ) ; end; theorem :: OSALG_4:10 (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "A")) "being" ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "E")) "being" ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Var "A")) (Bool "for" (Set (Var "s1")) "," (Set (Var "s2")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) "st" (Bool (Bool (Set (Var "s1")) ($#r3_orders_2 :::"<="::: ) (Set (Var "s2")))) "holds" (Bool (Set ($#k6_osalg_4 :::"OSClass"::: ) "(" (Set (Var "E")) "," (Set (Var "s1")) ")" ) ($#r1_tarski :::"c="::: ) (Set ($#k6_osalg_4 :::"OSClass"::: ) "(" (Set (Var "E")) "," (Set (Var "s2")) ")" )))))) ; definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "A" be ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "E" be ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Const "A")); func :::"OSClass"::: "E" -> ($#m1_hidden :::"OrderSortedSet":::) "of" "S" means :: OSALG_4:def 11 (Bool "for" (Set (Var "s1")) "being" ($#m1_subset_1 :::"Element":::) "of" "S" "holds" (Bool (Set it ($#k1_funct_1 :::"."::: ) (Set (Var "s1"))) ($#r1_hidden :::"="::: ) (Set ($#k6_osalg_4 :::"OSClass"::: ) "(" "E" "," (Set (Var "s1")) ")" ))); end; :: deftheorem defines :::"OSClass"::: OSALG_4:def 11 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "A")) "being" ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "E")) "being" ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Var "A")) (Bool "for" (Set (Var "b4")) "being" ($#m1_hidden :::"OrderSortedSet":::) "of" (Set (Var "S")) "holds" (Bool "(" (Bool (Set (Var "b4")) ($#r1_hidden :::"="::: ) (Set ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "E")))) "iff" (Bool "for" (Set (Var "s1")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) "holds" (Bool (Set (Set (Var "b4")) ($#k1_funct_1 :::"."::: ) (Set (Var "s1"))) ($#r1_hidden :::"="::: ) (Set ($#k6_osalg_4 :::"OSClass"::: ) "(" (Set (Var "E")) "," (Set (Var "s1")) ")" ))) ")" ))))); registrationlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "A" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "E" be ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Const "A")); cluster (Set ($#k7_osalg_4 :::"OSClass"::: ) "E") -> bbbadV2_RELAT_1() ; end; definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "E" be ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Const "U1")); let "s" be ($#m1_subset_1 :::"Element":::) "of" (Set (Const "S")); let "x" be ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Const "U1"))) ($#k1_funct_1 :::"."::: ) (Set (Const "s"))); func :::"OSClass"::: "(" "E" "," "x" ")" -> ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k6_osalg_4 :::"OSClass"::: ) "(" "E" "," "s" ")" ) equals :: OSALG_4:def 12 (Set ($#k6_eqrel_1 :::"Class"::: ) "(" (Set "(" ($#k5_osalg_4 :::"CompClass"::: ) "(" "E" "," (Set "(" ($#k3_osalg_4 :::"CComp"::: ) "s" ")" ) ")" ")" ) "," "x" ")" ); end; :: deftheorem defines :::"OSClass"::: OSALG_4:def 12 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "E")) "being" ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Var "U1")) (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) ($#k1_funct_1 :::"."::: ) (Set (Var "s"))) "holds" (Bool (Set ($#k8_osalg_4 :::"OSClass"::: ) "(" (Set (Var "E")) "," (Set (Var "x")) ")" ) ($#r1_hidden :::"="::: ) (Set ($#k6_eqrel_1 :::"Class"::: ) "(" (Set "(" ($#k5_osalg_4 :::"CompClass"::: ) "(" (Set (Var "E")) "," (Set "(" ($#k3_osalg_4 :::"CComp"::: ) (Set (Var "s")) ")" ) ")" ")" ) "," (Set (Var "x")) ")" ))))))); theorem :: OSALG_4:11 (Bool "for" (Set (Var "R")) "being" ($#~v2_struct_0 "non" ($#v2_struct_0 :::"empty"::: ) ) ($#v2_osalg_4 :::"locally_directed"::: ) ($#l1_orders_2 :::"Poset":::) (Bool "for" (Set (Var "x")) "," (Set (Var "y")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) "st" (Bool (Bool "ex" (Set (Var "z")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) "st" (Bool "(" (Bool (Set (Var "z")) ($#r3_orders_2 :::"<="::: ) (Set (Var "x"))) & (Bool (Set (Var "z")) ($#r3_orders_2 :::"<="::: ) (Set (Var "y"))) ")" ))) "holds" (Bool "ex" (Set (Var "u")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "R")) "st" (Bool "(" (Bool (Set (Var "x")) ($#r3_orders_2 :::"<="::: ) (Set (Var "u"))) & (Bool (Set (Var "y")) ($#r3_orders_2 :::"<="::: ) (Set (Var "u"))) ")" )))) ; theorem :: OSALG_4:12 (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "E")) "being" ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Var "U1")) (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "x")) "," (Set (Var "y")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) ($#k1_funct_1 :::"."::: ) (Set (Var "s"))) "holds" (Bool "(" (Bool (Set ($#k8_osalg_4 :::"OSClass"::: ) "(" (Set (Var "E")) "," (Set (Var "x")) ")" ) ($#r1_hidden :::"="::: ) (Set ($#k8_osalg_4 :::"OSClass"::: ) "(" (Set (Var "E")) "," (Set (Var "y")) ")" )) "iff" (Bool (Set ($#k4_tarski :::"["::: ) (Set (Var "x")) "," (Set (Var "y")) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set (Set (Var "E")) ($#k2_msualg_4 :::"."::: ) (Set (Var "s")))) ")" )))))) ; theorem :: OSALG_4:13 (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "E")) "being" ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Var "U1")) (Bool "for" (Set (Var "s1")) "," (Set (Var "s2")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) ($#k1_funct_1 :::"."::: ) (Set (Var "s1"))) "st" (Bool (Bool (Set (Var "s1")) ($#r3_orders_2 :::"<="::: ) (Set (Var "s2")))) "holds" (Bool "for" (Set (Var "y")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) ($#k1_funct_1 :::"."::: ) (Set (Var "s2"))) "st" (Bool (Bool (Set (Var "y")) ($#r1_hidden :::"="::: ) (Set (Var "x")))) "holds" (Bool (Set ($#k8_osalg_4 :::"OSClass"::: ) "(" (Set (Var "E")) "," (Set (Var "x")) ")" ) ($#r1_hidden :::"="::: ) (Set ($#k8_osalg_4 :::"OSClass"::: ) "(" (Set (Var "E")) "," (Set (Var "y")) ")" )))))))) ; begin definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "o" be ($#m1_subset_1 :::"Element"::: ) "of" (Set "the" ($#u4_struct_0 :::"carrier'"::: ) "of" (Set (Const "S"))); let "A" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "R" be ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "A")); let "x" be ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k3_msualg_1 :::"Args"::: ) "(" (Set (Const "o")) "," (Set (Const "A")) ")" ); func "R" :::"#_os"::: "x" -> ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k4_card_3 :::"product"::: ) (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) "R" ")" ) ($#k3_relat_1 :::"*"::: ) (Set "(" ($#k1_msualg_1 :::"the_arity_of"::: ) "o" ")" ) ")" )) means :: OSALG_4:def 13 (Bool "for" (Set (Var "n")) "being" ($#m1_hidden :::"Nat":::) "st" (Bool (Bool (Set (Var "n")) ($#r2_hidden :::"in"::: ) (Set ($#k4_finseq_1 :::"dom"::: ) (Set "(" ($#k1_msualg_1 :::"the_arity_of"::: ) "o" ")" )))) "holds" (Bool "ex" (Set (Var "y")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "A") ($#k1_funct_1 :::"."::: ) (Set "(" (Set "(" ($#k1_msualg_1 :::"the_arity_of"::: ) "o" ")" ) ($#k7_partfun1 :::"/."::: ) (Set (Var "n")) ")" )) "st" (Bool "(" (Bool (Set (Var "y")) ($#r1_hidden :::"="::: ) (Set "x" ($#k1_funct_1 :::"."::: ) (Set (Var "n")))) & (Bool (Set it ($#k1_funct_1 :::"."::: ) (Set (Var "n"))) ($#r1_hidden :::"="::: ) (Set ($#k8_osalg_4 :::"OSClass"::: ) "(" "R" "," (Set (Var "y")) ")" )) ")" ))); end; :: deftheorem defines :::"#_os"::: OSALG_4:def 13 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "o")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set "the" ($#u4_struct_0 :::"carrier'"::: ) "of" (Set (Var "S"))) (Bool "for" (Set (Var "A")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "A")) (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k3_msualg_1 :::"Args"::: ) "(" (Set (Var "o")) "," (Set (Var "A")) ")" ) (Bool "for" (Set (Var "b6")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k4_card_3 :::"product"::: ) (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "(" ($#k1_msualg_1 :::"the_arity_of"::: ) (Set (Var "o")) ")" ) ")" )) "holds" (Bool "(" (Bool (Set (Var "b6")) ($#r1_hidden :::"="::: ) (Set (Set (Var "R")) ($#k9_osalg_4 :::"#_os"::: ) (Set (Var "x")))) "iff" (Bool "for" (Set (Var "n")) "being" ($#m1_hidden :::"Nat":::) "st" (Bool (Bool (Set (Var "n")) ($#r2_hidden :::"in"::: ) (Set ($#k4_finseq_1 :::"dom"::: ) (Set "(" ($#k1_msualg_1 :::"the_arity_of"::: ) (Set (Var "o")) ")" )))) "holds" (Bool "ex" (Set (Var "y")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "A"))) ($#k1_funct_1 :::"."::: ) (Set "(" (Set "(" ($#k1_msualg_1 :::"the_arity_of"::: ) (Set (Var "o")) ")" ) ($#k7_partfun1 :::"/."::: ) (Set (Var "n")) ")" )) "st" (Bool "(" (Bool (Set (Var "y")) ($#r1_hidden :::"="::: ) (Set (Set (Var "x")) ($#k1_funct_1 :::"."::: ) (Set (Var "n")))) & (Bool (Set (Set (Var "b6")) ($#k1_funct_1 :::"."::: ) (Set (Var "n"))) ($#r1_hidden :::"="::: ) (Set ($#k8_osalg_4 :::"OSClass"::: ) "(" (Set (Var "R")) "," (Set (Var "y")) ")" )) ")" ))) ")" ))))))); definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "o" be ($#m1_subset_1 :::"Element"::: ) "of" (Set "the" ($#u4_struct_0 :::"carrier'"::: ) "of" (Set (Const "S"))); let "A" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "R" be ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "A")); func :::"OSQuotRes"::: "(" "R" "," "o" ")" -> ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "A") ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" "S") ")" ) ($#k1_funct_1 :::"."::: ) "o" ")" ) "," (Set "(" (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) "R" ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" "S") ")" ) ($#k1_funct_1 :::"."::: ) "o" ")" ) means :: OSALG_4:def 14 (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "A") ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_msualg_1 :::"the_result_sort_of"::: ) "o" ")" )) "holds" (Bool (Set it ($#k1_funct_1 :::"."::: ) (Set (Var "x"))) ($#r1_hidden :::"="::: ) (Set ($#k8_osalg_4 :::"OSClass"::: ) "(" "R" "," (Set (Var "x")) ")" ))); func :::"OSQuotArgs"::: "(" "R" "," "o" ")" -> ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "(" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "A") ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" "S") ")" ) ($#k1_funct_1 :::"."::: ) "o" ")" ) "," (Set "(" (Set "(" (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) "R" ")" ) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" "S") ")" ) ($#k1_funct_1 :::"."::: ) "o" ")" ) means :: OSALG_4:def 15 (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k3_msualg_1 :::"Args"::: ) "(" "o" "," "A" ")" ) "holds" (Bool (Set it ($#k1_funct_1 :::"."::: ) (Set (Var "x"))) ($#r1_hidden :::"="::: ) (Set "R" ($#k9_osalg_4 :::"#_os"::: ) (Set (Var "x"))))); end; :: deftheorem defines :::"OSQuotRes"::: OSALG_4:def 14 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "o")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set "the" ($#u4_struct_0 :::"carrier'"::: ) "of" (Set (Var "S"))) (Bool "for" (Set (Var "A")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "A")) (Bool "for" (Set (Var "b5")) "being" ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "A"))) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" (Set (Var "S"))) ")" ) ($#k1_funct_1 :::"."::: ) (Set (Var "o")) ")" ) "," (Set "(" (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" (Set (Var "S"))) ")" ) ($#k1_funct_1 :::"."::: ) (Set (Var "o")) ")" ) "holds" (Bool "(" (Bool (Set (Var "b5")) ($#r1_hidden :::"="::: ) (Set ($#k10_osalg_4 :::"OSQuotRes"::: ) "(" (Set (Var "R")) "," (Set (Var "o")) ")" )) "iff" (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "A"))) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k2_msualg_1 :::"the_result_sort_of"::: ) (Set (Var "o")) ")" )) "holds" (Bool (Set (Set (Var "b5")) ($#k1_funct_1 :::"."::: ) (Set (Var "x"))) ($#r1_hidden :::"="::: ) (Set ($#k8_osalg_4 :::"OSClass"::: ) "(" (Set (Var "R")) "," (Set (Var "x")) ")" ))) ")" )))))); :: deftheorem defines :::"OSQuotArgs"::: OSALG_4:def 15 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "o")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set "the" ($#u4_struct_0 :::"carrier'"::: ) "of" (Set (Var "S"))) (Bool "for" (Set (Var "A")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "A")) (Bool "for" (Set (Var "b5")) "being" ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "(" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "A"))) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" (Set (Var "S"))) ")" ) ($#k1_funct_1 :::"."::: ) (Set (Var "o")) ")" ) "," (Set "(" (Set "(" (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" (Set (Var "S"))) ")" ) ($#k1_funct_1 :::"."::: ) (Set (Var "o")) ")" ) "holds" (Bool "(" (Bool (Set (Var "b5")) ($#r1_hidden :::"="::: ) (Set ($#k11_osalg_4 :::"OSQuotArgs"::: ) "(" (Set (Var "R")) "," (Set (Var "o")) ")" )) "iff" (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k3_msualg_1 :::"Args"::: ) "(" (Set (Var "o")) "," (Set (Var "A")) ")" ) "holds" (Bool (Set (Set (Var "b5")) ($#k1_funct_1 :::"."::: ) (Set (Var "x"))) ($#r1_hidden :::"="::: ) (Set (Set (Var "R")) ($#k9_osalg_4 :::"#_os"::: ) (Set (Var "x"))))) ")" )))))); definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "A" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "R" be ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "A")); func :::"OSQuotRes"::: "R" -> ($#m2_pboole :::"ManySortedFunction"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "A") ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" "S")) "," (Set (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) "R" ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" "S")) means :: OSALG_4:def 16 (Bool "for" (Set (Var "o")) "being" ($#m1_subset_1 :::"OperSymbol":::) "of" "S" "holds" (Bool (Set it ($#k5_msualg_4 :::"."::: ) (Set (Var "o"))) ($#r2_funct_2 :::"="::: ) (Set ($#k10_osalg_4 :::"OSQuotRes"::: ) "(" "R" "," (Set (Var "o")) ")" ))); func :::"OSQuotArgs"::: "R" -> ($#m2_pboole :::"ManySortedFunction"::: ) "of" (Set (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "A") ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" "S")) "," (Set (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) "R" ")" ) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" "S")) means :: OSALG_4:def 17 (Bool "for" (Set (Var "o")) "being" ($#m1_subset_1 :::"OperSymbol":::) "of" "S" "holds" (Bool (Set it ($#k5_msualg_4 :::"."::: ) (Set (Var "o"))) ($#r2_funct_2 :::"="::: ) (Set ($#k11_osalg_4 :::"OSQuotArgs"::: ) "(" "R" "," (Set (Var "o")) ")" ))); end; :: deftheorem defines :::"OSQuotRes"::: OSALG_4:def 16 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "A")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "A")) (Bool "for" (Set (Var "b4")) "being" ($#m2_pboole :::"ManySortedFunction"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "A"))) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" (Set (Var "S")))) "," (Set (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" (Set (Var "S")))) "holds" (Bool "(" (Bool (Set (Var "b4")) ($#r1_hidden :::"="::: ) (Set ($#k12_osalg_4 :::"OSQuotRes"::: ) (Set (Var "R")))) "iff" (Bool "for" (Set (Var "o")) "being" ($#m1_subset_1 :::"OperSymbol":::) "of" (Set (Var "S")) "holds" (Bool (Set (Set (Var "b4")) ($#k5_msualg_4 :::"."::: ) (Set (Var "o"))) ($#r2_funct_2 :::"="::: ) (Set ($#k10_osalg_4 :::"OSQuotRes"::: ) "(" (Set (Var "R")) "," (Set (Var "o")) ")" ))) ")" ))))); :: deftheorem defines :::"OSQuotArgs"::: OSALG_4:def 17 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "A")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "A")) (Bool "for" (Set (Var "b4")) "being" ($#m2_pboole :::"ManySortedFunction"::: ) "of" (Set (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "A"))) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" (Set (Var "S")))) "," (Set (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" (Set (Var "S")))) "holds" (Bool "(" (Bool (Set (Var "b4")) ($#r1_hidden :::"="::: ) (Set ($#k13_osalg_4 :::"OSQuotArgs"::: ) (Set (Var "R")))) "iff" (Bool "for" (Set (Var "o")) "being" ($#m1_subset_1 :::"OperSymbol":::) "of" (Set (Var "S")) "holds" (Bool (Set (Set (Var "b4")) ($#k5_msualg_4 :::"."::: ) (Set (Var "o"))) ($#r2_funct_2 :::"="::: ) (Set ($#k11_osalg_4 :::"OSQuotArgs"::: ) "(" (Set (Var "R")) "," (Set (Var "o")) ")" ))) ")" ))))); theorem :: OSALG_4:14 (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "o")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set "the" ($#u4_struct_0 :::"carrier'"::: ) "of" (Set (Var "S"))) (Bool "for" (Set (Var "A")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "A")) (Bool "for" (Set (Var "x")) "being" ($#m1_hidden :::"set"::: ) "st" (Bool (Bool (Set (Var "x")) ($#r2_hidden :::"in"::: ) (Set (Set "(" (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" (Set (Var "S"))) ")" ) ($#k1_funct_1 :::"."::: ) (Set (Var "o"))))) "holds" (Bool "ex" (Set (Var "a")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k3_msualg_1 :::"Args"::: ) "(" (Set (Var "o")) "," (Set (Var "A")) ")" ) "st" (Bool (Set (Var "x")) ($#r1_hidden :::"="::: ) (Set (Set (Var "R")) ($#k9_osalg_4 :::"#_os"::: ) (Set (Var "a")))))))))) ; definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "o" be ($#m1_subset_1 :::"Element"::: ) "of" (Set "the" ($#u4_struct_0 :::"carrier'"::: ) "of" (Set (Const "S"))); let "A" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "R" be ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "A")); func :::"OSQuotCharact"::: "(" "R" "," "o" ")" -> ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "(" (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) "R" ")" ) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" "S") ")" ) ($#k1_funct_1 :::"."::: ) "o" ")" ) "," (Set "(" (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) "R" ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" "S") ")" ) ($#k1_funct_1 :::"."::: ) "o" ")" ) means :: OSALG_4:def 18 (Bool "for" (Set (Var "a")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k3_msualg_1 :::"Args"::: ) "(" "o" "," "A" ")" ) "st" (Bool (Bool (Set "R" ($#k9_osalg_4 :::"#_os"::: ) (Set (Var "a"))) ($#r2_hidden :::"in"::: ) (Set (Set "(" (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) "R" ")" ) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" "S") ")" ) ($#k1_funct_1 :::"."::: ) "o"))) "holds" (Bool (Set it ($#k1_funct_1 :::"."::: ) (Set "(" "R" ($#k9_osalg_4 :::"#_os"::: ) (Set (Var "a")) ")" )) ($#r1_hidden :::"="::: ) (Set (Set "(" (Set "(" ($#k10_osalg_4 :::"OSQuotRes"::: ) "(" "R" "," "o" ")" ")" ) ($#k1_partfun1 :::"*"::: ) (Set "(" ($#k5_msualg_1 :::"Den"::: ) "(" "o" "," "A" ")" ")" ) ")" ) ($#k1_funct_1 :::"."::: ) (Set (Var "a"))))); end; :: deftheorem defines :::"OSQuotCharact"::: OSALG_4:def 18 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "o")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set "the" ($#u4_struct_0 :::"carrier'"::: ) "of" (Set (Var "S"))) (Bool "for" (Set (Var "A")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "A")) (Bool "for" (Set (Var "b5")) "being" ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "(" (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" (Set (Var "S"))) ")" ) ($#k1_funct_1 :::"."::: ) (Set (Var "o")) ")" ) "," (Set "(" (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" (Set (Var "S"))) ")" ) ($#k1_funct_1 :::"."::: ) (Set (Var "o")) ")" ) "holds" (Bool "(" (Bool (Set (Var "b5")) ($#r1_hidden :::"="::: ) (Set ($#k14_osalg_4 :::"OSQuotCharact"::: ) "(" (Set (Var "R")) "," (Set (Var "o")) ")" )) "iff" (Bool "for" (Set (Var "a")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k3_msualg_1 :::"Args"::: ) "(" (Set (Var "o")) "," (Set (Var "A")) ")" ) "st" (Bool (Bool (Set (Set (Var "R")) ($#k9_osalg_4 :::"#_os"::: ) (Set (Var "a"))) ($#r2_hidden :::"in"::: ) (Set (Set "(" (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" (Set (Var "S"))) ")" ) ($#k1_funct_1 :::"."::: ) (Set (Var "o"))))) "holds" (Bool (Set (Set (Var "b5")) ($#k1_funct_1 :::"."::: ) (Set "(" (Set (Var "R")) ($#k9_osalg_4 :::"#_os"::: ) (Set (Var "a")) ")" )) ($#r1_hidden :::"="::: ) (Set (Set "(" (Set "(" ($#k10_osalg_4 :::"OSQuotRes"::: ) "(" (Set (Var "R")) "," (Set (Var "o")) ")" ")" ) ($#k1_partfun1 :::"*"::: ) (Set "(" ($#k5_msualg_1 :::"Den"::: ) "(" (Set (Var "o")) "," (Set (Var "A")) ")" ")" ) ")" ) ($#k1_funct_1 :::"."::: ) (Set (Var "a"))))) ")" )))))); definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "A" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "R" be ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "A")); func :::"OSQuotCharact"::: "R" -> ($#m2_pboole :::"ManySortedFunction"::: ) "of" (Set (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) "R" ")" ) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" "S")) "," (Set (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) "R" ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" "S")) means :: OSALG_4:def 19 (Bool "for" (Set (Var "o")) "being" ($#m1_subset_1 :::"OperSymbol":::) "of" "S" "holds" (Bool (Set it ($#k5_msualg_4 :::"."::: ) (Set (Var "o"))) ($#r2_funct_2 :::"="::: ) (Set ($#k14_osalg_4 :::"OSQuotCharact"::: ) "(" "R" "," (Set (Var "o")) ")" ))); end; :: deftheorem defines :::"OSQuotCharact"::: OSALG_4:def 19 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "A")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "A")) (Bool "for" (Set (Var "b4")) "being" ($#m2_pboole :::"ManySortedFunction"::: ) "of" (Set (Set "(" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) ($#k6_finseq_2 :::"#"::: ) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u1_msualg_1 :::"Arity"::: ) "of" (Set (Var "S")))) "," (Set (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) ($#k3_relat_1 :::"*"::: ) (Set "the" ($#u2_msualg_1 :::"ResultSort"::: ) "of" (Set (Var "S")))) "holds" (Bool "(" (Bool (Set (Var "b4")) ($#r1_hidden :::"="::: ) (Set ($#k15_osalg_4 :::"OSQuotCharact"::: ) (Set (Var "R")))) "iff" (Bool "for" (Set (Var "o")) "being" ($#m1_subset_1 :::"OperSymbol":::) "of" (Set (Var "S")) "holds" (Bool (Set (Set (Var "b4")) ($#k5_msualg_4 :::"."::: ) (Set (Var "o"))) ($#r2_funct_2 :::"="::: ) (Set ($#k14_osalg_4 :::"OSQuotCharact"::: ) "(" (Set (Var "R")) "," (Set (Var "o")) ")" ))) ")" ))))); definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "R" be ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "U1")); func :::"QuotOSAlg"::: "(" "U1" "," "R" ")" -> ($#l3_msualg_1 :::"OSAlgebra":::) "of" "S" equals :: OSALG_4:def 20 (Set ($#g3_msualg_1 :::"MSAlgebra"::: ) "(#" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) "R" ")" ) "," (Set "(" ($#k15_osalg_4 :::"OSQuotCharact"::: ) "R" ")" ) "#)" ); end; :: deftheorem defines :::"QuotOSAlg"::: OSALG_4:def 20 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "U1")) "holds" (Bool (Set ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" (Set (Var "U1")) "," (Set (Var "R")) ")" ) ($#r1_hidden :::"="::: ) (Set ($#g3_msualg_1 :::"MSAlgebra"::: ) "(#" (Set "(" ($#k7_osalg_4 :::"OSClass"::: ) (Set (Var "R")) ")" ) "," (Set "(" ($#k15_osalg_4 :::"OSQuotCharact"::: ) (Set (Var "R")) ")" ) "#)" ))))); registrationlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "R" be ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "U1")); cluster (Set ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" "U1" "," "R" ")" ) -> ($#v3_msualg_1 :::"strict"::: ) ($#v4_msualg_1 :::"non-empty"::: ) ; end; definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "R" be ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "U1")); let "s" be ($#m1_subset_1 :::"Element":::) "of" (Set (Const "S")); func :::"OSNat_Hom"::: "(" "U1" "," "R" "," "s" ")" -> ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "U1") ($#k1_funct_1 :::"."::: ) "s" ")" ) "," (Set "(" ($#k6_osalg_4 :::"OSClass"::: ) "(" "R" "," "s" ")" ")" ) means :: OSALG_4:def 21 (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "U1") ($#k1_funct_1 :::"."::: ) "s") "holds" (Bool (Set it ($#k3_funct_2 :::"."::: ) (Set (Var "x"))) ($#r1_hidden :::"="::: ) (Set ($#k8_osalg_4 :::"OSClass"::: ) "(" "R" "," (Set (Var "x")) ")" ))); end; :: deftheorem defines :::"OSNat_Hom"::: OSALG_4:def 21 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "U1")) (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "b5")) "being" ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) ($#k1_funct_1 :::"."::: ) (Set (Var "s")) ")" ) "," (Set "(" ($#k6_osalg_4 :::"OSClass"::: ) "(" (Set (Var "R")) "," (Set (Var "s")) ")" ")" ) "holds" (Bool "(" (Bool (Set (Var "b5")) ($#r1_hidden :::"="::: ) (Set ($#k17_osalg_4 :::"OSNat_Hom"::: ) "(" (Set (Var "U1")) "," (Set (Var "R")) "," (Set (Var "s")) ")" )) "iff" (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) ($#k1_funct_1 :::"."::: ) (Set (Var "s"))) "holds" (Bool (Set (Set (Var "b5")) ($#k3_funct_2 :::"."::: ) (Set (Var "x"))) ($#r1_hidden :::"="::: ) (Set ($#k8_osalg_4 :::"OSClass"::: ) "(" (Set (Var "R")) "," (Set (Var "x")) ")" ))) ")" )))))); definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "R" be ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "U1")); func :::"OSNat_Hom"::: "(" "U1" "," "R" ")" -> ($#m2_pboole :::"ManySortedFunction":::) "of" "U1" "," (Set "(" ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" "U1" "," "R" ")" ")" ) means :: OSALG_4:def 22 (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" "S" "holds" (Bool (Set it ($#k1_msualg_3 :::"."::: ) (Set (Var "s"))) ($#r1_funct_2 :::"="::: ) (Set ($#k17_osalg_4 :::"OSNat_Hom"::: ) "(" "U1" "," "R" "," (Set (Var "s")) ")" ))); end; :: deftheorem defines :::"OSNat_Hom"::: OSALG_4:def 22 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "U1")) (Bool "for" (Set (Var "b4")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set "(" ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" (Set (Var "U1")) "," (Set (Var "R")) ")" ")" ) "holds" (Bool "(" (Bool (Set (Var "b4")) ($#r1_hidden :::"="::: ) (Set ($#k18_osalg_4 :::"OSNat_Hom"::: ) "(" (Set (Var "U1")) "," (Set (Var "R")) ")" )) "iff" (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) "holds" (Bool (Set (Set (Var "b4")) ($#k1_msualg_3 :::"."::: ) (Set (Var "s"))) ($#r1_funct_2 :::"="::: ) (Set ($#k17_osalg_4 :::"OSNat_Hom"::: ) "(" (Set (Var "U1")) "," (Set (Var "R")) "," (Set (Var "s")) ")" ))) ")" ))))); theorem :: OSALG_4:15 (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "U1")) "holds" (Bool "(" (Bool (Set ($#k18_osalg_4 :::"OSNat_Hom"::: ) "(" (Set (Var "U1")) "," (Set (Var "R")) ")" ) ($#r2_msualg_3 :::"is_epimorphism"::: ) (Set (Var "U1")) "," (Set ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" (Set (Var "U1")) "," (Set (Var "R")) ")" )) & (Bool (Set ($#k18_osalg_4 :::"OSNat_Hom"::: ) "(" (Set (Var "U1")) "," (Set (Var "R")) ")" ) "is" ($#v1_osalg_3 :::"order-sorted"::: ) ) ")" )))) ; theorem :: OSALG_4:16 (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "," (Set (Var "U2")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "F")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set (Var "U2")) "st" (Bool (Bool (Set (Var "F")) ($#r1_msualg_3 :::"is_homomorphism"::: ) (Set (Var "U1")) "," (Set (Var "U2"))) & (Bool (Set (Var "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) )) "holds" (Bool (Set ($#k17_msualg_4 :::"MSCng"::: ) (Set (Var "F"))) "is" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "U1")))))) ; definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1", "U2" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "F" be ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Const "U1")) "," (Set (Const "U2")); assume (Bool "(" (Bool (Set (Const "F")) ($#r1_msualg_3 :::"is_homomorphism"::: ) (Set (Const "U1")) "," (Set (Const "U2"))) & (Bool (Set (Const "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) ) ")" ) ; func :::"OSCng"::: "F" -> ($#m1_osalg_4 :::"OSCongruence":::) "of" "U1" equals :: OSALG_4:def 23 (Set ($#k17_msualg_4 :::"MSCng"::: ) "F"); end; :: deftheorem defines :::"OSCng"::: OSALG_4:def 23 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "," (Set (Var "U2")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "F")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set (Var "U2")) "st" (Bool (Bool (Set (Var "F")) ($#r1_msualg_3 :::"is_homomorphism"::: ) (Set (Var "U1")) "," (Set (Var "U2"))) & (Bool (Set (Var "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) )) "holds" (Bool (Set ($#k19_osalg_4 :::"OSCng"::: ) (Set (Var "F"))) ($#r1_hidden :::"="::: ) (Set ($#k17_msualg_4 :::"MSCng"::: ) (Set (Var "F"))))))); definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1", "U2" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "F" be ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Const "U1")) "," (Set (Const "U2")); let "s" be ($#m1_subset_1 :::"Element":::) "of" (Set (Const "S")); assume that (Bool (Set (Const "F")) ($#r1_msualg_3 :::"is_homomorphism"::: ) (Set (Const "U1")) "," (Set (Const "U2"))) and (Bool (Set (Const "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) ) ; func :::"OSHomQuot"::: "(" "F" "," "s" ")" -> ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set "(" ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" "U1" "," (Set "(" ($#k19_osalg_4 :::"OSCng"::: ) "F" ")" ) ")" ")" )) ($#k1_funct_1 :::"."::: ) "s" ")" ) "," (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "U2") ($#k1_funct_1 :::"."::: ) "s" ")" ) means :: OSALG_4:def 24 (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "U1") ($#k1_funct_1 :::"."::: ) "s") "holds" (Bool (Set it ($#k1_funct_1 :::"."::: ) (Set "(" ($#k8_osalg_4 :::"OSClass"::: ) "(" (Set "(" ($#k19_osalg_4 :::"OSCng"::: ) "F" ")" ) "," (Set (Var "x")) ")" ")" )) ($#r1_hidden :::"="::: ) (Set (Set "(" "F" ($#k1_msualg_3 :::"."::: ) "s" ")" ) ($#k3_funct_2 :::"."::: ) (Set (Var "x"))))); end; :: deftheorem defines :::"OSHomQuot"::: OSALG_4:def 24 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "," (Set (Var "U2")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "F")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set (Var "U2")) (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) "st" (Bool (Bool (Set (Var "F")) ($#r1_msualg_3 :::"is_homomorphism"::: ) (Set (Var "U1")) "," (Set (Var "U2"))) & (Bool (Set (Var "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) )) "holds" (Bool "for" (Set (Var "b6")) "being" ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set "(" ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" (Set (Var "U1")) "," (Set "(" ($#k19_osalg_4 :::"OSCng"::: ) (Set (Var "F")) ")" ) ")" ")" )) ($#k1_funct_1 :::"."::: ) (Set (Var "s")) ")" ) "," (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U2"))) ($#k1_funct_1 :::"."::: ) (Set (Var "s")) ")" ) "holds" (Bool "(" (Bool (Set (Var "b6")) ($#r1_hidden :::"="::: ) (Set ($#k20_osalg_4 :::"OSHomQuot"::: ) "(" (Set (Var "F")) "," (Set (Var "s")) ")" )) "iff" (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) ($#k1_funct_1 :::"."::: ) (Set (Var "s"))) "holds" (Bool (Set (Set (Var "b6")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k8_osalg_4 :::"OSClass"::: ) "(" (Set "(" ($#k19_osalg_4 :::"OSCng"::: ) (Set (Var "F")) ")" ) "," (Set (Var "x")) ")" ")" )) ($#r1_hidden :::"="::: ) (Set (Set "(" (Set (Var "F")) ($#k1_msualg_3 :::"."::: ) (Set (Var "s")) ")" ) ($#k3_funct_2 :::"."::: ) (Set (Var "x"))))) ")" )))))); definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1", "U2" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "F" be ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Const "U1")) "," (Set (Const "U2")); func :::"OSHomQuot"::: "F" -> ($#m2_pboole :::"ManySortedFunction":::) "of" (Set "(" ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" "U1" "," (Set "(" ($#k19_osalg_4 :::"OSCng"::: ) "F" ")" ) ")" ")" ) "," "U2" means :: OSALG_4:def 25 (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" "S" "holds" (Bool (Set it ($#k1_msualg_3 :::"."::: ) (Set (Var "s"))) ($#r2_funct_2 :::"="::: ) (Set ($#k20_osalg_4 :::"OSHomQuot"::: ) "(" "F" "," (Set (Var "s")) ")" ))); end; :: deftheorem defines :::"OSHomQuot"::: OSALG_4:def 25 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "," (Set (Var "U2")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "F")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set (Var "U2")) (Bool "for" (Set (Var "b5")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set "(" ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" (Set (Var "U1")) "," (Set "(" ($#k19_osalg_4 :::"OSCng"::: ) (Set (Var "F")) ")" ) ")" ")" ) "," (Set (Var "U2")) "holds" (Bool "(" (Bool (Set (Var "b5")) ($#r1_hidden :::"="::: ) (Set ($#k21_osalg_4 :::"OSHomQuot"::: ) (Set (Var "F")))) "iff" (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) "holds" (Bool (Set (Set (Var "b5")) ($#k1_msualg_3 :::"."::: ) (Set (Var "s"))) ($#r2_funct_2 :::"="::: ) (Set ($#k20_osalg_4 :::"OSHomQuot"::: ) "(" (Set (Var "F")) "," (Set (Var "s")) ")" ))) ")" ))))); theorem :: OSALG_4:17 (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "," (Set (Var "U2")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "F")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set (Var "U2")) "st" (Bool (Bool (Set (Var "F")) ($#r1_msualg_3 :::"is_homomorphism"::: ) (Set (Var "U1")) "," (Set (Var "U2"))) & (Bool (Set (Var "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) )) "holds" (Bool "(" (Bool (Set ($#k21_osalg_4 :::"OSHomQuot"::: ) (Set (Var "F"))) ($#r3_msualg_3 :::"is_monomorphism"::: ) (Set ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" (Set (Var "U1")) "," (Set "(" ($#k19_osalg_4 :::"OSCng"::: ) (Set (Var "F")) ")" ) ")" ) "," (Set (Var "U2"))) & (Bool (Set ($#k21_osalg_4 :::"OSHomQuot"::: ) (Set (Var "F"))) "is" ($#v1_osalg_3 :::"order-sorted"::: ) ) ")" )))) ; theorem :: OSALG_4:18 (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "," (Set (Var "U2")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "F")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set (Var "U2")) "st" (Bool (Bool (Set (Var "F")) ($#r2_msualg_3 :::"is_epimorphism"::: ) (Set (Var "U1")) "," (Set (Var "U2"))) & (Bool (Set (Var "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) )) "holds" (Bool (Set ($#k21_osalg_4 :::"OSHomQuot"::: ) (Set (Var "F"))) ($#r4_msualg_3 :::"is_isomorphism"::: ) (Set ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" (Set (Var "U1")) "," (Set "(" ($#k19_osalg_4 :::"OSCng"::: ) (Set (Var "F")) ")" ) ")" ) "," (Set (Var "U2")))))) ; theorem :: OSALG_4:19 (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "," (Set (Var "U2")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "F")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set (Var "U2")) "st" (Bool (Bool (Set (Var "F")) ($#r2_msualg_3 :::"is_epimorphism"::: ) (Set (Var "U1")) "," (Set (Var "U2"))) & (Bool (Set (Var "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) )) "holds" (Bool (Set ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" (Set (Var "U1")) "," (Set "(" ($#k19_osalg_4 :::"OSCng"::: ) (Set (Var "F")) ")" ) ")" ) "," (Set (Var "U2")) ($#r6_msualg_3 :::"are_isomorphic"::: ) )))) ; definitionlet "S" be ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "R" be ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Const "U1")); attr "R" is :::"monotone"::: means :: OSALG_4:def 26 (Bool "for" (Set (Var "o1")) "," (Set (Var "o2")) "being" ($#m1_subset_1 :::"OperSymbol":::) "of" "S" "st" (Bool (Bool (Set (Var "o1")) ($#r6_osalg_1 :::"<="::: ) (Set (Var "o2")))) "holds" (Bool "for" (Set (Var "x1")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k3_msualg_1 :::"Args"::: ) "(" (Set (Var "o1")) "," "U1" ")" ) (Bool "for" (Set (Var "x2")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k3_msualg_1 :::"Args"::: ) "(" (Set (Var "o2")) "," "U1" ")" ) "st" (Bool (Bool "(" "for" (Set (Var "y")) "being" ($#m1_hidden :::"Nat":::) "st" (Bool (Bool (Set (Var "y")) ($#r2_hidden :::"in"::: ) (Set ($#k9_xtuple_0 :::"dom"::: ) (Set (Var "x1"))))) "holds" (Bool (Set ($#k4_tarski :::"["::: ) (Set "(" (Set (Var "x1")) ($#k1_funct_1 :::"."::: ) (Set (Var "y")) ")" ) "," (Set "(" (Set (Var "x2")) ($#k1_funct_1 :::"."::: ) (Set (Var "y")) ")" ) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set "R" ($#k2_msualg_4 :::"."::: ) (Set "(" (Set "(" ($#k1_msualg_1 :::"the_arity_of"::: ) (Set (Var "o2")) ")" ) ($#k7_partfun1 :::"/."::: ) (Set (Var "y")) ")" ))) ")" )) "holds" (Bool (Set ($#k4_tarski :::"["::: ) (Set "(" (Set "(" ($#k5_msualg_1 :::"Den"::: ) "(" (Set (Var "o1")) "," "U1" ")" ")" ) ($#k3_funct_2 :::"."::: ) (Set (Var "x1")) ")" ) "," (Set "(" (Set "(" ($#k5_msualg_1 :::"Den"::: ) "(" (Set (Var "o2")) "," "U1" ")" ")" ) ($#k3_funct_2 :::"."::: ) (Set (Var "x2")) ")" ) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set "R" ($#k2_msualg_4 :::"."::: ) (Set "(" ($#k2_msualg_1 :::"the_result_sort_of"::: ) (Set (Var "o2")) ")" )))))); end; :: deftheorem defines :::"monotone"::: OSALG_4:def 26 : (Bool "for" (Set (Var "S")) "being" ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Var "U1")) "holds" (Bool "(" (Bool (Set (Var "R")) "is" ($#v3_osalg_4 :::"monotone"::: ) ) "iff" (Bool "for" (Set (Var "o1")) "," (Set (Var "o2")) "being" ($#m1_subset_1 :::"OperSymbol":::) "of" (Set (Var "S")) "st" (Bool (Bool (Set (Var "o1")) ($#r6_osalg_1 :::"<="::: ) (Set (Var "o2")))) "holds" (Bool "for" (Set (Var "x1")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k3_msualg_1 :::"Args"::: ) "(" (Set (Var "o1")) "," (Set (Var "U1")) ")" ) (Bool "for" (Set (Var "x2")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set ($#k3_msualg_1 :::"Args"::: ) "(" (Set (Var "o2")) "," (Set (Var "U1")) ")" ) "st" (Bool (Bool "(" "for" (Set (Var "y")) "being" ($#m1_hidden :::"Nat":::) "st" (Bool (Bool (Set (Var "y")) ($#r2_hidden :::"in"::: ) (Set ($#k9_xtuple_0 :::"dom"::: ) (Set (Var "x1"))))) "holds" (Bool (Set ($#k4_tarski :::"["::: ) (Set "(" (Set (Var "x1")) ($#k1_funct_1 :::"."::: ) (Set (Var "y")) ")" ) "," (Set "(" (Set (Var "x2")) ($#k1_funct_1 :::"."::: ) (Set (Var "y")) ")" ) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set (Set (Var "R")) ($#k2_msualg_4 :::"."::: ) (Set "(" (Set "(" ($#k1_msualg_1 :::"the_arity_of"::: ) (Set (Var "o2")) ")" ) ($#k7_partfun1 :::"/."::: ) (Set (Var "y")) ")" ))) ")" )) "holds" (Bool (Set ($#k4_tarski :::"["::: ) (Set "(" (Set "(" ($#k5_msualg_1 :::"Den"::: ) "(" (Set (Var "o1")) "," (Set (Var "U1")) ")" ")" ) ($#k3_funct_2 :::"."::: ) (Set (Var "x1")) ")" ) "," (Set "(" (Set "(" ($#k5_msualg_1 :::"Den"::: ) "(" (Set (Var "o2")) "," (Set (Var "U1")) ")" ")" ) ($#k3_funct_2 :::"."::: ) (Set (Var "x2")) ")" ) ($#k4_tarski :::"]"::: ) ) ($#r2_hidden :::"in"::: ) (Set (Set (Var "R")) ($#k2_msualg_4 :::"."::: ) (Set "(" ($#k2_msualg_1 :::"the_result_sort_of"::: ) (Set (Var "o2")) ")" )))))) ")" )))); theorem :: OSALG_4:20 (Bool "for" (Set (Var "S")) "being" ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) "holds" (Bool (Set ($#k6_pboole :::"[|"::: ) (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) "," (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) ($#k6_pboole :::"|]"::: ) ) "is" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "U1"))))) ; theorem :: OSALG_4:21 (Bool "for" (Set (Var "S")) "being" ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "U1")) "st" (Bool (Bool (Set (Var "R")) ($#r8_pboole :::"="::: ) (Set ($#k6_pboole :::"[|"::: ) (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) "," (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) ($#k6_pboole :::"|]"::: ) ))) "holds" (Bool (Set (Var "R")) "is" ($#v3_osalg_4 :::"monotone"::: ) )))) ; registrationlet "S" be ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); cluster ($#~v1_xboole_0 "non" ($#v1_xboole_0 :::"empty"::: ) ) ($#v1_relat_1 :::"Relation-like"::: ) (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" "S") ($#v4_relat_1 :::"-defined"::: ) ($#v1_funct_1 :::"Function-like"::: ) ($#v1_partfun1 :::"total"::: ) ($#v2_funcop_1 :::"Relation-yielding"::: ) ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#v3_msualg_4 :::"MSCongruence-like"::: ) ($#v3_osalg_4 :::"monotone"::: ) for ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" "U1"; end; registrationlet "S" be ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); cluster ($#~v1_xboole_0 "non" ($#v1_xboole_0 :::"empty"::: ) ) ($#v1_relat_1 :::"Relation-like"::: ) (Set "the" ($#u1_struct_0 :::"carrier"::: ) "of" "S") ($#v4_relat_1 :::"-defined"::: ) ($#v1_funct_1 :::"Function-like"::: ) ($#v1_partfun1 :::"total"::: ) ($#v2_funcop_1 :::"Relation-yielding"::: ) ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#v3_osalg_4 :::"monotone"::: ) for ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" "U1"; end; theorem :: OSALG_4:22 (Bool "for" (Set (Var "S")) "being" ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#v3_osalg_4 :::"monotone"::: ) ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" (Set (Var "U1")) "holds" (Bool (Set (Var "R")) "is" ($#v3_msualg_4 :::"MSCongruence-like"::: ) )))) ; registrationlet "S" be ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); cluster ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#v3_osalg_4 :::"monotone"::: ) -> ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#v3_msualg_4 :::"MSCongruence-like"::: ) for ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" "U1"; end; theorem :: OSALG_4:23 (Bool "for" (Set (Var "S")) "being" ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#v13_osalg_1 :::"monotone"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "U1")) "holds" (Bool (Set (Var "R")) "is" ($#v3_osalg_4 :::"monotone"::: ) )))) ; registrationlet "S" be ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#v13_osalg_1 :::"monotone"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); cluster ($#v2_msualg_4 :::"MSEquivalence-like"::: ) ($#v3_msualg_4 :::"MSCongruence-like"::: ) -> ($#v3_osalg_4 :::"monotone"::: ) for ($#m1_osalg_4 :::"OrderSortedRelation"::: ) "of" "U1"; end; registrationlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "R" be ($#v3_osalg_4 :::"monotone"::: ) ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "U1")); cluster (Set ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" "U1" "," "R" ")" ) -> ($#v13_osalg_1 :::"monotone"::: ) ; end; theorem :: OSALG_4:24 (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "U2")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#v13_osalg_1 :::"monotone"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "F")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set (Var "U2")) "st" (Bool (Bool (Set (Var "F")) ($#r1_msualg_3 :::"is_homomorphism"::: ) (Set (Var "U1")) "," (Set (Var "U2"))) & (Bool (Set (Var "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) )) "holds" (Bool (Set ($#k19_osalg_4 :::"OSCng"::: ) (Set (Var "F"))) "is" ($#v3_osalg_4 :::"monotone"::: ) ))))) ; definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1", "U2" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "F" be ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Const "U1")) "," (Set (Const "U2")); let "R" be ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "U1")); let "s" be ($#m1_subset_1 :::"Element":::) "of" (Set (Const "S")); assume that (Bool (Set (Const "F")) ($#r1_msualg_3 :::"is_homomorphism"::: ) (Set (Const "U1")) "," (Set (Const "U2"))) and (Bool (Set (Const "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) ) and (Bool (Set (Const "R")) ($#r2_pboole :::"c="::: ) (Set ($#k19_osalg_4 :::"OSCng"::: ) (Set (Const "F")))) ; func :::"OSHomQuot"::: "(" "F" "," "R" "," "s" ")" -> ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set "(" ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" "U1" "," "R" ")" ")" )) ($#k1_funct_1 :::"."::: ) "s" ")" ) "," (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "U2") ($#k1_funct_1 :::"."::: ) "s" ")" ) means :: OSALG_4:def 27 (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" "U1") ($#k1_funct_1 :::"."::: ) "s") "holds" (Bool (Set it ($#k1_funct_1 :::"."::: ) (Set "(" ($#k8_osalg_4 :::"OSClass"::: ) "(" "R" "," (Set (Var "x")) ")" ")" )) ($#r1_hidden :::"="::: ) (Set (Set "(" "F" ($#k1_msualg_3 :::"."::: ) "s" ")" ) ($#k3_funct_2 :::"."::: ) (Set (Var "x"))))); end; :: deftheorem defines :::"OSHomQuot"::: OSALG_4:def 27 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "," (Set (Var "U2")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "F")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set (Var "U2")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "U1")) (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) "st" (Bool (Bool (Set (Var "F")) ($#r1_msualg_3 :::"is_homomorphism"::: ) (Set (Var "U1")) "," (Set (Var "U2"))) & (Bool (Set (Var "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) ) & (Bool (Set (Var "R")) ($#r2_pboole :::"c="::: ) (Set ($#k19_osalg_4 :::"OSCng"::: ) (Set (Var "F"))))) "holds" (Bool "for" (Set (Var "b7")) "being" ($#m1_subset_1 :::"Function":::) "of" (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set "(" ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" (Set (Var "U1")) "," (Set (Var "R")) ")" ")" )) ($#k1_funct_1 :::"."::: ) (Set (Var "s")) ")" ) "," (Set "(" (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U2"))) ($#k1_funct_1 :::"."::: ) (Set (Var "s")) ")" ) "holds" (Bool "(" (Bool (Set (Var "b7")) ($#r1_hidden :::"="::: ) (Set ($#k22_osalg_4 :::"OSHomQuot"::: ) "(" (Set (Var "F")) "," (Set (Var "R")) "," (Set (Var "s")) ")" )) "iff" (Bool "for" (Set (Var "x")) "being" ($#m1_subset_1 :::"Element"::: ) "of" (Set (Set "the" ($#u3_msualg_1 :::"Sorts"::: ) "of" (Set (Var "U1"))) ($#k1_funct_1 :::"."::: ) (Set (Var "s"))) "holds" (Bool (Set (Set (Var "b7")) ($#k1_funct_1 :::"."::: ) (Set "(" ($#k8_osalg_4 :::"OSClass"::: ) "(" (Set (Var "R")) "," (Set (Var "x")) ")" ")" )) ($#r1_hidden :::"="::: ) (Set (Set "(" (Set (Var "F")) ($#k1_msualg_3 :::"."::: ) (Set (Var "s")) ")" ) ($#k3_funct_2 :::"."::: ) (Set (Var "x"))))) ")" ))))))); definitionlet "S" be ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::); let "U1", "U2" be ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Const "S")); let "F" be ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Const "U1")) "," (Set (Const "U2")); let "R" be ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Const "U1")); func :::"OSHomQuot"::: "(" "F" "," "R" ")" -> ($#m2_pboole :::"ManySortedFunction":::) "of" (Set "(" ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" "U1" "," "R" ")" ")" ) "," "U2" means :: OSALG_4:def 28 (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" "S" "holds" (Bool (Set it ($#k1_msualg_3 :::"."::: ) (Set (Var "s"))) ($#r2_funct_2 :::"="::: ) (Set ($#k22_osalg_4 :::"OSHomQuot"::: ) "(" "F" "," "R" "," (Set (Var "s")) ")" ))); end; :: deftheorem defines :::"OSHomQuot"::: OSALG_4:def 28 : (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "," (Set (Var "U2")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "F")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set (Var "U2")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "U1")) (Bool "for" (Set (Var "b6")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set "(" ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" (Set (Var "U1")) "," (Set (Var "R")) ")" ")" ) "," (Set (Var "U2")) "holds" (Bool "(" (Bool (Set (Var "b6")) ($#r1_hidden :::"="::: ) (Set ($#k23_osalg_4 :::"OSHomQuot"::: ) "(" (Set (Var "F")) "," (Set (Var "R")) ")" )) "iff" (Bool "for" (Set (Var "s")) "being" ($#m1_subset_1 :::"Element":::) "of" (Set (Var "S")) "holds" (Bool (Set (Set (Var "b6")) ($#k1_msualg_3 :::"."::: ) (Set (Var "s"))) ($#r2_funct_2 :::"="::: ) (Set ($#k22_osalg_4 :::"OSHomQuot"::: ) "(" (Set (Var "F")) "," (Set (Var "R")) "," (Set (Var "s")) ")" ))) ")" )))))); theorem :: OSALG_4:25 (Bool "for" (Set (Var "S")) "being" ($#v2_osalg_4 :::"locally_directed"::: ) ($#l3_osalg_1 :::"OrderSortedSign":::) (Bool "for" (Set (Var "U1")) "," (Set (Var "U2")) "being" ($#v4_msualg_1 :::"non-empty"::: ) ($#l3_msualg_1 :::"OSAlgebra":::) "of" (Set (Var "S")) (Bool "for" (Set (Var "F")) "being" ($#m2_pboole :::"ManySortedFunction":::) "of" (Set (Var "U1")) "," (Set (Var "U2")) (Bool "for" (Set (Var "R")) "being" ($#m1_osalg_4 :::"OSCongruence":::) "of" (Set (Var "U1")) "st" (Bool (Bool (Set (Var "F")) ($#r1_msualg_3 :::"is_homomorphism"::: ) (Set (Var "U1")) "," (Set (Var "U2"))) & (Bool (Set (Var "F")) "is" ($#v1_osalg_3 :::"order-sorted"::: ) ) & (Bool (Set (Var "R")) ($#r2_pboole :::"c="::: ) (Set ($#k19_osalg_4 :::"OSCng"::: ) (Set (Var "F"))))) "holds" (Bool "(" (Bool (Set ($#k23_osalg_4 :::"OSHomQuot"::: ) "(" (Set (Var "F")) "," (Set (Var "R")) ")" ) ($#r1_msualg_3 :::"is_homomorphism"::: ) (Set ($#k16_osalg_4 :::"QuotOSAlg"::: ) "(" (Set (Var "U1")) "," (Set (Var "R")) ")" ) "," (Set (Var "U2"))) & (Bool (Set ($#k23_osalg_4 :::"OSHomQuot"::: ) "(" (Set (Var "F")) "," (Set (Var "R")) ")" ) "is" ($#v1_osalg_3 :::"order-sorted"::: ) ) ")" ))))) ;