:: Article ARYTM_2, MML version 4.124.1059 :: ARYTM_2:funcnot 1 definition func DEDEKIND_CUTS -> Element of bool bool RAT+ equals {b1 where b1 is Element of bool RAT+: for b2 being Element of RAT+ st b2 in b1 holds (for b3 being Element of RAT+ st b3 <=' b2 holds b3 in b1) & (ex b3 being Element of RAT+ st b3 in b1 & b2 < b3)} \ {RAT+}; end; :: ARYTM_2:def 1 theorem DEDEKIND_CUTS = {B1 where B1 is Element of bool RAT+: for B2 being Element of RAT+ st B2 in B1 holds (for B3 being Element of RAT+ st B3 <=' B2 holds B3 in B1 & ex B3 being Element of RAT+ st (B3 in B1 & not (B3 <=' B2)))} \ {RAT+}; :: ARYTM_2:funcreg 1 registration cluster DEDEKIND_CUTS -> non empty; end; :: ARYTM_2:funcnot 2 definition func REAL+ -> set equals (RAT+ \/ DEDEKIND_CUTS) \ {{b2 where b2 is Element of RAT+: b2 < b1} where b1 is Element of RAT+: b1 <> {}}; end; :: ARYTM_2:def 2 theorem REAL+ = (RAT+ \/ DEDEKIND_CUTS) \ {{B2 where B2 is Element of RAT+: not (B1 <=' B2)} where B1 is Element of RAT+: not (B1 = {})}; :: ARYTM_2:th 1 theorem RAT+ c= REAL+; :: ARYTM_2:th 2 theorem omega c= REAL+; :: ARYTM_2:funcreg 2 registration cluster REAL+ -> non empty; end; :: ARYTM_2:funcnot 3 definition let a1 be Element of REAL+; func DEDEKIND_CUT A1 -> Element of DEDEKIND_CUTS means ex b1 being Element of RAT+ st a1 = b1 & it = {b2 where b2 is Element of RAT+: b2 < b1} if a1 in RAT+ otherwise it = a1; end; :: ARYTM_2:def 3 theorem for B1 being Element of REAL+ for B2 being Element of DEDEKIND_CUTS holds ((B1 in RAT+ implies B2 = DEDEKIND_CUT B1 iff ex B3 being Element of RAT+ st (B1 = B3 & B2 = {B4 where B4 is Element of RAT+: not (B3 <=' B4)})) & B1 in RAT+ or B2 = DEDEKIND_CUT B1 iff B2 = B1); :: ARYTM_2:th 3 theorem for B1 being set holds not ([{},B1] in REAL+); :: ARYTM_2:funcnot 4 definition let a1 be Element of DEDEKIND_CUTS; func GLUED A1 -> Element of REAL+ means ex b1 being Element of RAT+ st it = b1 & (for b2 being Element of RAT+ holds b2 in a1 iff b2 < b1) if ex b1 being Element of RAT+ st for b2 being Element of RAT+ holds b2 in a1 iff b2 < b1 otherwise it = a1; end; :: ARYTM_2:def 4 theorem for B1 being Element of DEDEKIND_CUTS for B2 being Element of REAL+ holds (for B3 being Element of RAT+ holds ex B4 being Element of RAT+ st (B4 in B1 & B3 <=' B4) or (not (B3 <=' B4) & not (B4 in B1)) or B2 = GLUED B1 iff ex B3 being Element of RAT+ st (B2 = B3 & for B4 being Element of RAT+ holds B4 in B1 iff not (B3 <=' B4)) & (for B3 being Element of RAT+ holds ex B4 being Element of RAT+ st (B4 in B1 & B3 <=' B4) or (not (B3 <=' B4) & not (B4 in B1)) implies B2 = GLUED B1 iff B2 = B1)); :: ARYTM_2:prednot 1 definition let a1, a2 be Element of REAL+; pred A1 <=' A2 means ex b1, b2 being Element of RAT+ st a1 = b1 & a2 = b2 & b1 <=' b2 if a1 in RAT+ & a2 in RAT+, a1 in a2 if a1 in RAT+ & not a2 in RAT+, not a2 in a1 if not a1 in RAT+ & a2 in RAT+ otherwise a1 c= a2; connectedness; for a1, a2 being Element of REAL+ holds a1 <=' a2 or a2 <=' a1; end; :: ARYTM_2:dfs 5 definiens let A1 be Element of REAL+; let A2 be Element of REAL+; To prove A1 <=' A2 it is sufficient to prove per cases; case (A1 in RAT+ & A2 in RAT+); thus ex B1 being Element of RAT+ st ex B2 being Element of RAT+ st (A1 = B1 & A2 = B2 & B1 <=' B2); end; case (A1 in RAT+ & not (A2 in RAT+)); thus A1 in A2; end; case (not (A1 in RAT+) & A2 in RAT+); thus not (A2 in A1); end; case ((A1 in RAT+ implies not (A2 in RAT+)) & (A1 in RAT+ implies A2 in RAT+) & (not (A1 in RAT+) implies not (A2 in RAT+))); thus A1 c= A2;; end; :: ARYTM_2:def 5 theorem for B1, B2 being Element of REAL+ holds (((B1 in RAT+ & B2 in RAT+) implies B1 <=' B2 iff ex B3 being Element of RAT+ st ex B4 being Element of RAT+ st (B1 = B3 & B2 = B4 & B3 <=' B4)) & ((B1 in RAT+ & not (B2 in RAT+)) implies B1 <=' B2 iff B1 in B2) & ((not (B1 in RAT+) & B2 in RAT+) implies B1 <=' B2 iff not (B2 in B1)) & (((B1 in RAT+ implies not (B2 in RAT+)) & (B1 in RAT+ implies B2 in RAT+) & (not (B1 in RAT+) implies not (B2 in RAT+))) implies B1 <=' B2 iff B1 c= B2)); :: ARYTM_2:prednot 2 notation let a1, a2 be Element of REAL+; antonym a2 < a1 for a1 <=' a2; end; :: ARYTM_2:funcnot 5 definition let a1, a2 be Element of DEDEKIND_CUTS; func A1 + A2 -> Element of DEDEKIND_CUTS equals {b1 + b2 where b1 is Element of RAT+, b2 is Element of RAT+: b1 in a1 & b2 in a2}; commutativity; for a1, a2 being Element of DEDEKIND_CUTS holds a1 + a2 = a2 + a1; end; :: ARYTM_2:def 6 theorem for B1, B2 being Element of DEDEKIND_CUTS holds B1 + B2 = {B3 + B4 where B3 is Element of RAT+, B4 is Element of RAT+: (B3 in B1 & B4 in B2)}; :: ARYTM_2:funcnot 6 definition let a1, a2 be Element of DEDEKIND_CUTS; func A1 *' A2 -> Element of DEDEKIND_CUTS equals {b1 *' b2 where b1 is Element of RAT+, b2 is Element of RAT+: b1 in a1 & b2 in a2}; commutativity; for a1, a2 being Element of DEDEKIND_CUTS holds a1 *' a2 = a2 *' a1; end; :: ARYTM_2:def 7 theorem for B1, B2 being Element of DEDEKIND_CUTS holds B1 *' B2 = {B3 *' B4 where B3 is Element of RAT+, B4 is Element of RAT+: (B3 in B1 & B4 in B2)}; :: ARYTM_2:funcnot 7 definition let a1, a2 be Element of REAL+; func A1 + A2 -> Element of REAL+ equals a1 if a2 = {}, a2 if a1 = {} otherwise GLUED ((DEDEKIND_CUT a1) + DEDEKIND_CUT a2); commutativity; for a1, a2 being Element of REAL+ holds a1 + a2 = a2 + a1; end; :: ARYTM_2:def 8 theorem for B1, B2 being Element of REAL+ holds ((B2 = {} implies B1 + B2 = B1) & (B1 = {} implies B1 + B2 = B2) & ((not (B2 = {}) & not (B1 = {})) implies B1 + B2 = GLUED ((DEDEKIND_CUT B1) + DEDEKIND_CUT B2))); :: ARYTM_2:funcnot 8 definition let a1, a2 be Element of REAL+; func A1 *' A2 -> Element of REAL+ equals GLUED ((DEDEKIND_CUT a1) *' DEDEKIND_CUT a2); commutativity; for a1, a2 being Element of REAL+ holds a1 *' a2 = a2 *' a1; end; :: ARYTM_2:def 9 theorem for B1, B2 being Element of REAL+ holds B1 *' B2 = GLUED ((DEDEKIND_CUT B1) *' DEDEKIND_CUT B2); :: ARYTM_2:th 4 theorem for B1, B2 being Element of REAL+ holds (B1 = {} implies B1 *' B2 = {}); :: ARYTM_2:th 5 canceled; :: ARYTM_2:th 6 theorem for B1, B2 being Element of REAL+ holds (B1 + B2 = {} implies B1 = {}); :: ARYTM_2:th 7 theorem for B1, B2, B3 being Element of REAL+ holds B1 + (B2 + B3) = (B1 + B2) + B3; :: ARYTM_2:th 8 theorem {B1 where B1 is Element of bool RAT+: for B2 being Element of RAT+ st B2 in B1 holds (for B3 being Element of RAT+ st B3 <=' B2 holds B3 in B1 & ex B3 being Element of RAT+ st (B3 in B1 & not (B3 <=' B2)))} is c=-linear; :: ARYTM_2:th 9 theorem for B1, B2 being Element of bool REAL+ holds ((ex B3 being Element of REAL+ st B3 in B1 & ex B3 being Element of REAL+ st B3 in B2 & for B3, B4 being Element of REAL+ holds ((B3 in B1 & B4 in B2) implies B3 <=' B4)) implies ex B3 being Element of REAL+ st for B4, B5 being Element of REAL+ holds ((B4 in B1 & B5 in B2) implies (B4 <=' B3 & B3 <=' B5))); :: ARYTM_2:th 10 theorem for B1, B2 being Element of REAL+ holds (B1 <=' B2 implies ex B3 being Element of REAL+ st B1 + B3 = B2); :: ARYTM_2:th 11 theorem for B1, B2 being Element of REAL+ holds ex B3 being Element of REAL+ st B1 + B3 = B2 or B2 + B3 = B1; :: ARYTM_2:th 12 theorem for B1, B2, B3 being Element of REAL+ holds (B1 + B2 = B1 + B3 implies B2 = B3); :: ARYTM_2:th 13 theorem for B1, B2, B3 being Element of REAL+ holds B1 *' (B2 *' B3) = (B1 *' B2) *' B3; :: ARYTM_2:th 14 theorem for B1, B2, B3 being Element of REAL+ holds B1 *' (B2 + B3) = (B1 *' B2) + (B1 *' B3); :: ARYTM_2:th 15 theorem for B1 being Element of REAL+ st not (B1 = {}) holds ex B2 being Element of REAL+ st B1 *' B2 = one; :: ARYTM_2:th 16 theorem for B1, B2 being Element of REAL+ holds (B1 = one implies B1 *' B2 = B2); :: ARYTM_2:th 17 theorem for B1, B2 being Element of REAL+ holds ((B1 in omega & B2 in omega) implies B2 + B1 in omega); :: ARYTM_2:th 18 theorem for B1 being Element of bool REAL+ st ({} in B1 & for B2, B3 being Element of REAL+ holds ((B2 in B1 & B3 = one) implies B2 + B3 in B1)) holds omega c= B1; :: ARYTM_2:th 19 theorem for B1 being Element of REAL+ st B1 in omega for B2 being Element of REAL+ holds B2 in B1 iff (B2 in omega & not (B2 = B1) & B2 <=' B1); :: ARYTM_2:th 20 theorem for B1, B2, B3 being Element of REAL+ holds (B1 = B2 + B3 implies B3 <=' B1); :: ARYTM_2:th 21 theorem ({} in REAL+ & one in REAL+); :: ARYTM_2:th 22 theorem for B1, B2 being Element of REAL+ holds ((B1 in RAT+ & B2 in RAT+) implies ex B3 being Element of RAT+ st ex B4 being Element of RAT+ st (B1 = B3 & B2 = B4 & B1 *' B2 = B3 *' B4));