TPTP Problem File: ITP064^2.p
View Solutions
- Solve Problem
%------------------------------------------------------------------------------
% File : ITP064^2 : TPTP v9.0.0. Released v7.5.0.
% Domain : Interactive Theorem Proving
% Problem : Sledgehammer GenClock problem prob_727__3251548_1
% Version : Especial.
% English :
% Refs : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
% : [Des21] Desharnais (2021), Email to Geoff Sutcliffe
% Source : [Des21]
% Names : GenClock/prob_727__3251548_1 [Des21]
% Status : Theorem
% Rating : 0.00 v7.5.0
% Syntax : Number of formulae : 377 ( 89 unt; 58 typ; 0 def)
% Number of atoms : 845 ( 252 equ; 0 cnn)
% Maximal formula atoms : 13 ( 2 avg)
% Number of connectives : 3289 ( 16 ~; 4 |; 27 &;2871 @)
% ( 0 <=>; 371 =>; 0 <=; 0 <~>)
% Maximal formula depth : 17 ( 7 avg)
% Number of types : 3 ( 2 usr)
% Number of type conns : 72 ( 72 >; 0 *; 0 +; 0 <<)
% Number of symbols : 59 ( 56 usr; 11 con; 0-4 aty)
% Number of variables : 880 ( 51 ^; 785 !; 4 ?; 880 :)
% ( 40 !>; 0 ?*; 0 @-; 0 @+)
% SPC : TH1_THM_EQU_NAR
% Comments : This file was generated by Sledgehammer 2021-02-23 16:16:43.808
%------------------------------------------------------------------------------
% Could-be-implicit typings (2)
thf(ty_t_Real_Oreal,type,
real: $tType ).
thf(ty_t_Nat_Onat,type,
nat: $tType ).
% Explicit typings (56)
thf(sy_cl_HOL_Otype,type,
type:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Oone,type,
one:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Ozero,type,
zero:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Ominus,type,
minus:
!>[A: $tType] : $o ).
thf(sy_cl_Orderings_Oord,type,
ord:
!>[A: $tType] : $o ).
thf(sy_cl_Orderings_Oorder,type,
order:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Ogroup__add,type,
group_add:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Omonoid__add,type,
monoid_add:
!>[A: $tType] : $o ).
thf(sy_cl_Orderings_Olinorder,type,
linorder:
!>[A: $tType] : $o ).
thf(sy_cl_Orderings_Opreorder,type,
preorder:
!>[A: $tType] : $o ).
thf(sy_cl_Rings_Oidom__abs__sgn,type,
idom_abs_sgn:
!>[A: $tType] : $o ).
thf(sy_cl_Rings_Ozero__neq__one,type,
zero_neq_one:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Oab__group__add,type,
ab_group_add:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Osemigroup__add,type,
semigroup_add:
!>[A: $tType] : $o ).
thf(sy_cl_Rings_Olinordered__idom,type,
linordered_idom:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Ocomm__monoid__add,type,
comm_monoid_add:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Oab__semigroup__add,type,
ab_semigroup_add:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Ocomm__monoid__diff,type,
comm_monoid_diff:
!>[A: $tType] : $o ).
thf(sy_cl_Rings_Olinordered__semidom,type,
linordered_semidom:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Ocancel__semigroup__add,type,
cancel_semigroup_add:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Oordered__ab__group__add,type,
ordered_ab_group_add:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Ocancel__comm__monoid__add,type,
cancel1352612707id_add:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Ocancel__ab__semigroup__add,type,
cancel146912293up_add:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Olinordered__ab__group__add,type,
linord219039673up_add:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Oordered__comm__monoid__add,type,
ordere216010020id_add:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Oordered__ab__group__add__abs,type,
ordere142940540dd_abs:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Oordered__ab__semigroup__add,type,
ordere779506340up_add:
!>[A: $tType] : $o ).
thf(sy_cl_Rings_Olinordered__nonzero__semiring,type,
linord1659791738miring:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Ocanonically__ordered__monoid__add,type,
canoni770627133id_add:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Oordered__ab__semigroup__add__imp__le,type,
ordere236663937imp_le:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Oordered__cancel__comm__monoid__diff,type,
ordere623563068d_diff:
!>[A: $tType] : $o ).
thf(sy_cl_Groups_Oordered__ab__semigroup__monoid__add__imp__le,type,
ordere516151231imp_le:
!>[A: $tType] : $o ).
thf(sy_c_GenClock__Mirabelle__pukziqipvs_OIC,type,
genClo1160817912lle_IC: nat > nat > real > real ).
thf(sy_c_GenClock__Mirabelle__pukziqipvs_O_092_060Lambda_062,type,
genClo721845095Lambda: real ).
thf(sy_c_GenClock__Mirabelle__pukziqipvs_O_092_060beta_062,type,
genClo1278781456e_beta: real ).
thf(sy_c_GenClock__Mirabelle__pukziqipvs_O_092_060theta_062,type,
genClo1400225944_theta: nat > nat > nat > real ).
thf(sy_c_GenClock__Mirabelle__pukziqipvs_Ocorrect,type,
genClo1015804716orrect: nat > real > $o ).
thf(sy_c_GenClock__Mirabelle__pukziqipvs_OokRead1,type,
genClo293725281kRead1: ( nat > real ) > real > ( nat > $o ) > $o ).
thf(sy_c_GenClock__Mirabelle__pukziqipvs_OokRead2,type,
genClo293725282kRead2: ( nat > real ) > ( nat > real ) > real > ( nat > $o ) > $o ).
thf(sy_c_GenClock__Mirabelle__pukziqipvs_Ookmaxsync,type,
genClo208577157axsync: nat > real > $o ).
thf(sy_c_GenClock__Mirabelle__pukziqipvs_Ormax,type,
genClo1650508560e_rmax: real ).
thf(sy_c_GenClock__Mirabelle__pukziqipvs_Ormin,type,
genClo1651033342e_rmin: real ).
thf(sy_c_GenClock__Mirabelle__pukziqipvs_Ote,type,
genClo1163638703lle_te: nat > nat > real ).
thf(sy_c_Groups_Oabs__class_Oabs,type,
abs_abs:
!>[A: $tType] : ( A > A ) ).
thf(sy_c_Groups_Ominus__class_Ominus,type,
minus_minus:
!>[A: $tType] : ( A > A > A ) ).
thf(sy_c_Groups_Oone__class_Oone,type,
one_one:
!>[A: $tType] : A ).
thf(sy_c_Groups_Oplus__class_Oplus,type,
plus_plus:
!>[A: $tType] : ( A > A > A ) ).
thf(sy_c_Groups_Ozero__class_Ozero,type,
zero_zero:
!>[A: $tType] : A ).
thf(sy_c_If,type,
if:
!>[A: $tType] : ( $o > A > A > A ) ).
thf(sy_c_Orderings_Oord__class_Oless__eq,type,
ord_less_eq:
!>[A: $tType] : ( A > A > $o ) ).
thf(sy_c_Orderings_Oord__class_Omax,type,
ord_max:
!>[A: $tType] : ( A > A > A ) ).
thf(sy_v__092_060delta_062S,type,
delta_S: real ).
thf(sy_v_i,type,
i: nat ).
thf(sy_v_l,type,
l: nat ).
thf(sy_v_m,type,
m: nat ).
thf(sy_v_p,type,
p: nat ).
% Relevant facts (254)
thf(fact_0_correct__closed,axiom,
! [P: nat,S: real,T: real] :
( ( ( ord_less_eq @ real @ S @ T )
& ( genClo1015804716orrect @ P @ T ) )
=> ( genClo1015804716orrect @ P @ S ) ) ).
% correct_closed
thf(fact_1_corr__m,axiom,
genClo1015804716orrect @ m @ ( genClo1163638703lle_te @ p @ ( plus_plus @ nat @ i @ ( one_one @ nat ) ) ) ).
% corr_m
thf(fact_2_corr__p,axiom,
genClo1015804716orrect @ p @ ( genClo1163638703lle_te @ p @ ( plus_plus @ nat @ i @ ( one_one @ nat ) ) ) ).
% corr_p
thf(fact_3_tml__le__tp,axiom,
ord_less_eq @ real @ ( ord_max @ real @ ( genClo1163638703lle_te @ l @ i ) @ ( genClo1163638703lle_te @ m @ i ) ) @ ( genClo1163638703lle_te @ p @ ( plus_plus @ nat @ i @ ( one_one @ nat ) ) ) ).
% tml_le_tp
thf(fact_4_corr__l,axiom,
genClo1015804716orrect @ l @ ( genClo1163638703lle_te @ p @ ( plus_plus @ nat @ i @ ( one_one @ nat ) ) ) ).
% corr_l
thf(fact_5_corr__l__tml,axiom,
genClo1015804716orrect @ l @ ( ord_max @ real @ ( genClo1163638703lle_te @ l @ i ) @ ( genClo1163638703lle_te @ m @ i ) ) ).
% corr_l_tml
thf(fact_6_tmi__le__tp,axiom,
ord_less_eq @ real @ ( genClo1163638703lle_te @ m @ i ) @ ( genClo1163638703lle_te @ p @ ( plus_plus @ nat @ i @ ( one_one @ nat ) ) ) ).
% tmi_le_tp
thf(fact_7_tli__le__tp,axiom,
ord_less_eq @ real @ ( genClo1163638703lle_te @ l @ i ) @ ( genClo1163638703lle_te @ p @ ( plus_plus @ nat @ i @ ( one_one @ nat ) ) ) ).
% tli_le_tp
thf(fact_8_max_Oidem,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [A2: A] :
( ( ord_max @ A @ A2 @ A2 )
= A2 ) ) ).
% max.idem
thf(fact_9_max_Oleft__idem,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [A2: A,B: A] :
( ( ord_max @ A @ A2 @ ( ord_max @ A @ A2 @ B ) )
= ( ord_max @ A @ A2 @ B ) ) ) ).
% max.left_idem
thf(fact_10_max_Oright__idem,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [A2: A,B: A] :
( ( ord_max @ A @ ( ord_max @ A @ A2 @ B ) @ B )
= ( ord_max @ A @ A2 @ B ) ) ) ).
% max.right_idem
thf(fact_11_IC__bound,axiom,
ord_less_eq @ real @ ( abs_abs @ real @ ( minus_minus @ real @ ( genClo1160817912lle_IC @ l @ i @ ( ord_max @ real @ ( genClo1163638703lle_te @ l @ i ) @ ( genClo1163638703lle_te @ m @ i ) ) ) @ ( genClo1160817912lle_IC @ m @ i @ ( ord_max @ real @ ( genClo1163638703lle_te @ l @ i ) @ ( genClo1163638703lle_te @ m @ i ) ) ) ) ) @ delta_S ).
% IC_bound
thf(fact_12_max_Oassoc,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_max @ A @ ( ord_max @ A @ A2 @ B ) @ C )
= ( ord_max @ A @ A2 @ ( ord_max @ A @ B @ C ) ) ) ) ).
% max.assoc
thf(fact_13_max_Ocommute,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ( ( ord_max @ A )
= ( ^ [A3: A,B2: A] : ( ord_max @ A @ B2 @ A3 ) ) ) ) ).
% max.commute
thf(fact_14_max_Oleft__commute,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [B: A,A2: A,C: A] :
( ( ord_max @ A @ B @ ( ord_max @ A @ A2 @ C ) )
= ( ord_max @ A @ A2 @ ( ord_max @ A @ B @ C ) ) ) ) ).
% max.left_commute
thf(fact_15_rte,axiom,
! [P2: nat,I: nat] :
( ( genClo1015804716orrect @ P2 @ ( genClo1163638703lle_te @ P2 @ ( plus_plus @ nat @ I @ ( one_one @ nat ) ) ) )
=> ( ord_less_eq @ real @ ( genClo1163638703lle_te @ P2 @ I ) @ ( genClo1163638703lle_te @ P2 @ ( plus_plus @ nat @ I @ ( one_one @ nat ) ) ) ) ) ).
% rte
thf(fact_16_max_Obounded__iff,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [B: A,C: A,A2: A] :
( ( ord_less_eq @ A @ ( ord_max @ A @ B @ C ) @ A2 )
= ( ( ord_less_eq @ A @ B @ A2 )
& ( ord_less_eq @ A @ C @ A2 ) ) ) ) ).
% max.bounded_iff
thf(fact_17_max__absorb1,axiom,
! [A: $tType] :
( ( order @ A )
=> ! [Y: A,X: A] :
( ( ord_less_eq @ A @ Y @ X )
=> ( ( ord_max @ A @ X @ Y )
= X ) ) ) ).
% max_absorb1
thf(fact_18_order__refl,axiom,
! [A: $tType] :
( ( preorder @ A )
=> ! [X: A] : ( ord_less_eq @ A @ X @ X ) ) ).
% order_refl
thf(fact_19_minus__apply,axiom,
! [B3: $tType,A: $tType] :
( ( minus @ B3 )
=> ( ( minus_minus @ ( A > B3 ) )
= ( ^ [A4: A > B3,B4: A > B3,X2: A] : ( minus_minus @ B3 @ ( A4 @ X2 ) @ ( B4 @ X2 ) ) ) ) ) ).
% minus_apply
thf(fact_20_le__funD,axiom,
! [B3: $tType,A: $tType] :
( ( ord @ B3 )
=> ! [F: A > B3,G: A > B3,X: A] :
( ( ord_less_eq @ ( A > B3 ) @ F @ G )
=> ( ord_less_eq @ B3 @ ( F @ X ) @ ( G @ X ) ) ) ) ).
% le_funD
thf(fact_21_le__funE,axiom,
! [B3: $tType,A: $tType] :
( ( ord @ B3 )
=> ! [F: A > B3,G: A > B3,X: A] :
( ( ord_less_eq @ ( A > B3 ) @ F @ G )
=> ( ord_less_eq @ B3 @ ( F @ X ) @ ( G @ X ) ) ) ) ).
% le_funE
thf(fact_22_le__funI,axiom,
! [B3: $tType,A: $tType] :
( ( ord @ B3 )
=> ! [F: A > B3,G: A > B3] :
( ! [X3: A] : ( ord_less_eq @ B3 @ ( F @ X3 ) @ ( G @ X3 ) )
=> ( ord_less_eq @ ( A > B3 ) @ F @ G ) ) ) ).
% le_funI
thf(fact_23_le__fun__def,axiom,
! [B3: $tType,A: $tType] :
( ( ord @ B3 )
=> ( ( ord_less_eq @ ( A > B3 ) )
= ( ^ [F2: A > B3,G2: A > B3] :
! [X2: A] : ( ord_less_eq @ B3 @ ( F2 @ X2 ) @ ( G2 @ X2 ) ) ) ) ) ).
% le_fun_def
thf(fact_24_fun__diff__def,axiom,
! [B3: $tType,A: $tType] :
( ( minus @ B3 )
=> ( ( minus_minus @ ( A > B3 ) )
= ( ^ [A4: A > B3,B4: A > B3,X2: A] : ( minus_minus @ B3 @ ( A4 @ X2 ) @ ( B4 @ X2 ) ) ) ) ) ).
% fun_diff_def
thf(fact_25_order__subst1,axiom,
! [A: $tType,B3: $tType] :
( ( ( order @ B3 )
& ( order @ A ) )
=> ! [A2: A,F: B3 > A,B: B3,C: B3] :
( ( ord_less_eq @ A @ A2 @ ( F @ B ) )
=> ( ( ord_less_eq @ B3 @ B @ C )
=> ( ! [X3: B3,Y2: B3] :
( ( ord_less_eq @ B3 @ X3 @ Y2 )
=> ( ord_less_eq @ A @ ( F @ X3 ) @ ( F @ Y2 ) ) )
=> ( ord_less_eq @ A @ A2 @ ( F @ C ) ) ) ) ) ) ).
% order_subst1
thf(fact_26_order__subst2,axiom,
! [A: $tType,C2: $tType] :
( ( ( order @ C2 )
& ( order @ A ) )
=> ! [A2: A,B: A,F: A > C2,C: C2] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( ord_less_eq @ C2 @ ( F @ B ) @ C )
=> ( ! [X3: A,Y2: A] :
( ( ord_less_eq @ A @ X3 @ Y2 )
=> ( ord_less_eq @ C2 @ ( F @ X3 ) @ ( F @ Y2 ) ) )
=> ( ord_less_eq @ C2 @ ( F @ A2 ) @ C ) ) ) ) ) ).
% order_subst2
thf(fact_27_ord__eq__le__subst,axiom,
! [A: $tType,B3: $tType] :
( ( ( ord @ B3 )
& ( ord @ A ) )
=> ! [A2: A,F: B3 > A,B: B3,C: B3] :
( ( A2
= ( F @ B ) )
=> ( ( ord_less_eq @ B3 @ B @ C )
=> ( ! [X3: B3,Y2: B3] :
( ( ord_less_eq @ B3 @ X3 @ Y2 )
=> ( ord_less_eq @ A @ ( F @ X3 ) @ ( F @ Y2 ) ) )
=> ( ord_less_eq @ A @ A2 @ ( F @ C ) ) ) ) ) ) ).
% ord_eq_le_subst
thf(fact_28_ord__le__eq__subst,axiom,
! [A: $tType,B3: $tType] :
( ( ( ord @ B3 )
& ( ord @ A ) )
=> ! [A2: A,B: A,F: A > B3,C: B3] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( ( F @ B )
= C )
=> ( ! [X3: A,Y2: A] :
( ( ord_less_eq @ A @ X3 @ Y2 )
=> ( ord_less_eq @ B3 @ ( F @ X3 ) @ ( F @ Y2 ) ) )
=> ( ord_less_eq @ B3 @ ( F @ A2 ) @ C ) ) ) ) ) ).
% ord_le_eq_subst
thf(fact_29_eq__iff,axiom,
! [A: $tType] :
( ( order @ A )
=> ( ( ^ [Y3: A,Z: A] : ( Y3 = Z ) )
= ( ^ [X2: A,Y4: A] :
( ( ord_less_eq @ A @ X2 @ Y4 )
& ( ord_less_eq @ A @ Y4 @ X2 ) ) ) ) ) ).
% eq_iff
thf(fact_30_antisym,axiom,
! [A: $tType] :
( ( order @ A )
=> ! [X: A,Y: A] :
( ( ord_less_eq @ A @ X @ Y )
=> ( ( ord_less_eq @ A @ Y @ X )
=> ( X = Y ) ) ) ) ).
% antisym
thf(fact_31_linear,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [X: A,Y: A] :
( ( ord_less_eq @ A @ X @ Y )
| ( ord_less_eq @ A @ Y @ X ) ) ) ).
% linear
thf(fact_32_eq__refl,axiom,
! [A: $tType] :
( ( preorder @ A )
=> ! [X: A,Y: A] :
( ( X = Y )
=> ( ord_less_eq @ A @ X @ Y ) ) ) ).
% eq_refl
thf(fact_33_le__cases,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [X: A,Y: A] :
( ~ ( ord_less_eq @ A @ X @ Y )
=> ( ord_less_eq @ A @ Y @ X ) ) ) ).
% le_cases
thf(fact_34_order_Otrans,axiom,
! [A: $tType] :
( ( order @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( ord_less_eq @ A @ B @ C )
=> ( ord_less_eq @ A @ A2 @ C ) ) ) ) ).
% order.trans
thf(fact_35_le__cases3,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [X: A,Y: A,Z2: A] :
( ( ( ord_less_eq @ A @ X @ Y )
=> ~ ( ord_less_eq @ A @ Y @ Z2 ) )
=> ( ( ( ord_less_eq @ A @ Y @ X )
=> ~ ( ord_less_eq @ A @ X @ Z2 ) )
=> ( ( ( ord_less_eq @ A @ X @ Z2 )
=> ~ ( ord_less_eq @ A @ Z2 @ Y ) )
=> ( ( ( ord_less_eq @ A @ Z2 @ Y )
=> ~ ( ord_less_eq @ A @ Y @ X ) )
=> ( ( ( ord_less_eq @ A @ Y @ Z2 )
=> ~ ( ord_less_eq @ A @ Z2 @ X ) )
=> ~ ( ( ord_less_eq @ A @ Z2 @ X )
=> ~ ( ord_less_eq @ A @ X @ Y ) ) ) ) ) ) ) ) ).
% le_cases3
thf(fact_36_antisym__conv,axiom,
! [A: $tType] :
( ( order @ A )
=> ! [Y: A,X: A] :
( ( ord_less_eq @ A @ Y @ X )
=> ( ( ord_less_eq @ A @ X @ Y )
= ( X = Y ) ) ) ) ).
% antisym_conv
thf(fact_37_order__class_Oorder_Oeq__iff,axiom,
! [A: $tType] :
( ( order @ A )
=> ( ( ^ [Y3: A,Z: A] : ( Y3 = Z ) )
= ( ^ [A3: A,B2: A] :
( ( ord_less_eq @ A @ A3 @ B2 )
& ( ord_less_eq @ A @ B2 @ A3 ) ) ) ) ) ).
% order_class.order.eq_iff
thf(fact_38_ord__eq__le__trans,axiom,
! [A: $tType] :
( ( ord @ A )
=> ! [A2: A,B: A,C: A] :
( ( A2 = B )
=> ( ( ord_less_eq @ A @ B @ C )
=> ( ord_less_eq @ A @ A2 @ C ) ) ) ) ).
% ord_eq_le_trans
thf(fact_39_ord__le__eq__trans,axiom,
! [A: $tType] :
( ( ord @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( B = C )
=> ( ord_less_eq @ A @ A2 @ C ) ) ) ) ).
% ord_le_eq_trans
thf(fact_40_order__class_Oorder_Oantisym,axiom,
! [A: $tType] :
( ( order @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( ord_less_eq @ A @ B @ A2 )
=> ( A2 = B ) ) ) ) ).
% order_class.order.antisym
thf(fact_41_order__trans,axiom,
! [A: $tType] :
( ( preorder @ A )
=> ! [X: A,Y: A,Z2: A] :
( ( ord_less_eq @ A @ X @ Y )
=> ( ( ord_less_eq @ A @ Y @ Z2 )
=> ( ord_less_eq @ A @ X @ Z2 ) ) ) ) ).
% order_trans
thf(fact_42_dual__order_Orefl,axiom,
! [A: $tType] :
( ( order @ A )
=> ! [A2: A] : ( ord_less_eq @ A @ A2 @ A2 ) ) ).
% dual_order.refl
thf(fact_43_linorder__wlog,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [P3: A > A > $o,A2: A,B: A] :
( ! [A5: A,B5: A] :
( ( ord_less_eq @ A @ A5 @ B5 )
=> ( P3 @ A5 @ B5 ) )
=> ( ! [A5: A,B5: A] :
( ( P3 @ B5 @ A5 )
=> ( P3 @ A5 @ B5 ) )
=> ( P3 @ A2 @ B ) ) ) ) ).
% linorder_wlog
thf(fact_44_dual__order_Otrans,axiom,
! [A: $tType] :
( ( order @ A )
=> ! [B: A,A2: A,C: A] :
( ( ord_less_eq @ A @ B @ A2 )
=> ( ( ord_less_eq @ A @ C @ B )
=> ( ord_less_eq @ A @ C @ A2 ) ) ) ) ).
% dual_order.trans
thf(fact_45_ext,axiom,
! [B3: $tType,A: $tType,F: A > B3,G: A > B3] :
( ! [X3: A] :
( ( F @ X3 )
= ( G @ X3 ) )
=> ( F = G ) ) ).
% ext
thf(fact_46_dual__order_Oeq__iff,axiom,
! [A: $tType] :
( ( order @ A )
=> ( ( ^ [Y3: A,Z: A] : ( Y3 = Z ) )
= ( ^ [A3: A,B2: A] :
( ( ord_less_eq @ A @ B2 @ A3 )
& ( ord_less_eq @ A @ A3 @ B2 ) ) ) ) ) ).
% dual_order.eq_iff
thf(fact_47_dual__order_Oantisym,axiom,
! [A: $tType] :
( ( order @ A )
=> ! [B: A,A2: A] :
( ( ord_less_eq @ A @ B @ A2 )
=> ( ( ord_less_eq @ A @ A2 @ B )
=> ( A2 = B ) ) ) ) ).
% dual_order.antisym
thf(fact_48_max_OcoboundedI2,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [C: A,B: A,A2: A] :
( ( ord_less_eq @ A @ C @ B )
=> ( ord_less_eq @ A @ C @ ( ord_max @ A @ A2 @ B ) ) ) ) ).
% max.coboundedI2
thf(fact_49_max_OcoboundedI1,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [C: A,A2: A,B: A] :
( ( ord_less_eq @ A @ C @ A2 )
=> ( ord_less_eq @ A @ C @ ( ord_max @ A @ A2 @ B ) ) ) ) ).
% max.coboundedI1
thf(fact_50_max_Oabsorb__iff2,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ( ( ord_less_eq @ A )
= ( ^ [A3: A,B2: A] :
( ( ord_max @ A @ A3 @ B2 )
= B2 ) ) ) ) ).
% max.absorb_iff2
thf(fact_51_max_Oabsorb__iff1,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ( ( ord_less_eq @ A )
= ( ^ [B2: A,A3: A] :
( ( ord_max @ A @ A3 @ B2 )
= A3 ) ) ) ) ).
% max.absorb_iff1
thf(fact_52_le__max__iff__disj,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [Z2: A,X: A,Y: A] :
( ( ord_less_eq @ A @ Z2 @ ( ord_max @ A @ X @ Y ) )
= ( ( ord_less_eq @ A @ Z2 @ X )
| ( ord_less_eq @ A @ Z2 @ Y ) ) ) ) ).
% le_max_iff_disj
thf(fact_53_max_Ocobounded2,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [B: A,A2: A] : ( ord_less_eq @ A @ B @ ( ord_max @ A @ A2 @ B ) ) ) ).
% max.cobounded2
thf(fact_54_max_Ocobounded1,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [A2: A,B: A] : ( ord_less_eq @ A @ A2 @ ( ord_max @ A @ A2 @ B ) ) ) ).
% max.cobounded1
thf(fact_55_max_Oorder__iff,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ( ( ord_less_eq @ A )
= ( ^ [B2: A,A3: A] :
( A3
= ( ord_max @ A @ A3 @ B2 ) ) ) ) ) ).
% max.order_iff
thf(fact_56_max_OboundedI,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [B: A,A2: A,C: A] :
( ( ord_less_eq @ A @ B @ A2 )
=> ( ( ord_less_eq @ A @ C @ A2 )
=> ( ord_less_eq @ A @ ( ord_max @ A @ B @ C ) @ A2 ) ) ) ) ).
% max.boundedI
thf(fact_57_max_OboundedE,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [B: A,C: A,A2: A] :
( ( ord_less_eq @ A @ ( ord_max @ A @ B @ C ) @ A2 )
=> ~ ( ( ord_less_eq @ A @ B @ A2 )
=> ~ ( ord_less_eq @ A @ C @ A2 ) ) ) ) ).
% max.boundedE
thf(fact_58_max_Oabsorb2,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( ord_max @ A @ A2 @ B )
= B ) ) ) ).
% max.absorb2
thf(fact_59_max_Oabsorb1,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [B: A,A2: A] :
( ( ord_less_eq @ A @ B @ A2 )
=> ( ( ord_max @ A @ A2 @ B )
= A2 ) ) ) ).
% max.absorb1
thf(fact_60_max_OorderI,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [A2: A,B: A] :
( ( A2
= ( ord_max @ A @ A2 @ B ) )
=> ( ord_less_eq @ A @ B @ A2 ) ) ) ).
% max.orderI
thf(fact_61_max_OorderE,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [B: A,A2: A] :
( ( ord_less_eq @ A @ B @ A2 )
=> ( A2
= ( ord_max @ A @ A2 @ B ) ) ) ) ).
% max.orderE
thf(fact_62_max_Omono,axiom,
! [A: $tType] :
( ( linorder @ A )
=> ! [C: A,A2: A,D: A,B: A] :
( ( ord_less_eq @ A @ C @ A2 )
=> ( ( ord_less_eq @ A @ D @ B )
=> ( ord_less_eq @ A @ ( ord_max @ A @ C @ D ) @ ( ord_max @ A @ A2 @ B ) ) ) ) ) ).
% max.mono
thf(fact_63_max__def,axiom,
! [A: $tType] :
( ( ord @ A )
=> ( ( ord_max @ A )
= ( ^ [A3: A,B2: A] : ( if @ A @ ( ord_less_eq @ A @ A3 @ B2 ) @ B2 @ A3 ) ) ) ) ).
% max_def
thf(fact_64_max__absorb2,axiom,
! [A: $tType] :
( ( ord @ A )
=> ! [X: A,Y: A] :
( ( ord_less_eq @ A @ X @ Y )
=> ( ( ord_max @ A @ X @ Y )
= Y ) ) ) ).
% max_absorb2
thf(fact_65_okmaxsync__def,axiom,
( genClo208577157axsync
= ( ^ [I2: nat,X2: real] :
! [P4: nat,Q: nat] :
( ( ( genClo1015804716orrect @ P4 @ ( ord_max @ real @ ( genClo1163638703lle_te @ P4 @ I2 ) @ ( genClo1163638703lle_te @ Q @ I2 ) ) )
& ( genClo1015804716orrect @ Q @ ( ord_max @ real @ ( genClo1163638703lle_te @ P4 @ I2 ) @ ( genClo1163638703lle_te @ Q @ I2 ) ) ) )
=> ( ord_less_eq @ real @ ( abs_abs @ real @ ( minus_minus @ real @ ( genClo1160817912lle_IC @ P4 @ I2 @ ( ord_max @ real @ ( genClo1163638703lle_te @ P4 @ I2 ) @ ( genClo1163638703lle_te @ Q @ I2 ) ) ) @ ( genClo1160817912lle_IC @ Q @ I2 @ ( ord_max @ real @ ( genClo1163638703lle_te @ P4 @ I2 ) @ ( genClo1163638703lle_te @ Q @ I2 ) ) ) ) ) @ X2 ) ) ) ) ).
% okmaxsync_def
thf(fact_66_le__add__diff__inverse,axiom,
! [A: $tType] :
( ( linordered_semidom @ A )
=> ! [B: A,A2: A] :
( ( ord_less_eq @ A @ B @ A2 )
=> ( ( plus_plus @ A @ B @ ( minus_minus @ A @ A2 @ B ) )
= A2 ) ) ) ).
% le_add_diff_inverse
thf(fact_67_le__add__diff__inverse2,axiom,
! [A: $tType] :
( ( linordered_semidom @ A )
=> ! [B: A,A2: A] :
( ( ord_less_eq @ A @ B @ A2 )
=> ( ( plus_plus @ A @ ( minus_minus @ A @ A2 @ B ) @ B )
= A2 ) ) ) ).
% le_add_diff_inverse2
thf(fact_68_abs__1,axiom,
! [A: $tType] :
( ( idom_abs_sgn @ A )
=> ( ( abs_abs @ A @ ( one_one @ A ) )
= ( one_one @ A ) ) ) ).
% abs_1
thf(fact_69_abs__add__abs,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A,B: A] :
( ( abs_abs @ A @ ( plus_plus @ A @ ( abs_abs @ A @ A2 ) @ ( abs_abs @ A @ B ) ) )
= ( plus_plus @ A @ ( abs_abs @ A @ A2 ) @ ( abs_abs @ A @ B ) ) ) ) ).
% abs_add_abs
thf(fact_70_add__diff__cancel,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A,B: A] :
( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B ) @ B )
= A2 ) ) ).
% add_diff_cancel
thf(fact_71_diff__add__cancel,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A,B: A] :
( ( plus_plus @ A @ ( minus_minus @ A @ A2 @ B ) @ B )
= A2 ) ) ).
% diff_add_cancel
thf(fact_72_add__diff__cancel__left,axiom,
! [A: $tType] :
( ( cancel146912293up_add @ A )
=> ! [C: A,A2: A,B: A] :
( ( minus_minus @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B ) )
= ( minus_minus @ A @ A2 @ B ) ) ) ).
% add_diff_cancel_left
thf(fact_73_add__diff__cancel__left_H,axiom,
! [A: $tType] :
( ( cancel146912293up_add @ A )
=> ! [A2: A,B: A] :
( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B ) @ A2 )
= B ) ) ).
% add_diff_cancel_left'
thf(fact_74_add__diff__cancel__right,axiom,
! [A: $tType] :
( ( cancel146912293up_add @ A )
=> ! [A2: A,C: A,B: A] :
( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B @ C ) )
= ( minus_minus @ A @ A2 @ B ) ) ) ).
% add_diff_cancel_right
thf(fact_75_add__right__cancel,axiom,
! [A: $tType] :
( ( cancel_semigroup_add @ A )
=> ! [B: A,A2: A,C: A] :
( ( ( plus_plus @ A @ B @ A2 )
= ( plus_plus @ A @ C @ A2 ) )
= ( B = C ) ) ) ).
% add_right_cancel
thf(fact_76_add__left__cancel,axiom,
! [A: $tType] :
( ( cancel_semigroup_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( ( plus_plus @ A @ A2 @ B )
= ( plus_plus @ A @ A2 @ C ) )
= ( B = C ) ) ) ).
% add_left_cancel
thf(fact_77_abs__idempotent,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A] :
( ( abs_abs @ A @ ( abs_abs @ A @ A2 ) )
= ( abs_abs @ A @ A2 ) ) ) ).
% abs_idempotent
thf(fact_78_abs__abs,axiom,
! [A: $tType] :
( ( idom_abs_sgn @ A )
=> ! [A2: A] :
( ( abs_abs @ A @ ( abs_abs @ A @ A2 ) )
= ( abs_abs @ A @ A2 ) ) ) ).
% abs_abs
thf(fact_79_add__le__cancel__right,axiom,
! [A: $tType] :
( ( ordere236663937imp_le @ A )
=> ! [A2: A,C: A,B: A] :
( ( ord_less_eq @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B @ C ) )
= ( ord_less_eq @ A @ A2 @ B ) ) ) ).
% add_le_cancel_right
thf(fact_80_add__le__cancel__left,axiom,
! [A: $tType] :
( ( ordere236663937imp_le @ A )
=> ! [C: A,A2: A,B: A] :
( ( ord_less_eq @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B ) )
= ( ord_less_eq @ A @ A2 @ B ) ) ) ).
% add_le_cancel_left
thf(fact_81_add__diff__cancel__right_H,axiom,
! [A: $tType] :
( ( cancel146912293up_add @ A )
=> ! [A2: A,B: A] :
( ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B ) @ B )
= A2 ) ) ).
% add_diff_cancel_right'
thf(fact_82_add__right__imp__eq,axiom,
! [A: $tType] :
( ( cancel_semigroup_add @ A )
=> ! [B: A,A2: A,C: A] :
( ( ( plus_plus @ A @ B @ A2 )
= ( plus_plus @ A @ C @ A2 ) )
=> ( B = C ) ) ) ).
% add_right_imp_eq
thf(fact_83_add__left__imp__eq,axiom,
! [A: $tType] :
( ( cancel_semigroup_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( ( plus_plus @ A @ A2 @ B )
= ( plus_plus @ A @ A2 @ C ) )
=> ( B = C ) ) ) ).
% add_left_imp_eq
thf(fact_84_add_Oleft__commute,axiom,
! [A: $tType] :
( ( ab_semigroup_add @ A )
=> ! [B: A,A2: A,C: A] :
( ( plus_plus @ A @ B @ ( plus_plus @ A @ A2 @ C ) )
= ( plus_plus @ A @ A2 @ ( plus_plus @ A @ B @ C ) ) ) ) ).
% add.left_commute
thf(fact_85_add_Ocommute,axiom,
! [A: $tType] :
( ( ab_semigroup_add @ A )
=> ( ( plus_plus @ A )
= ( ^ [A3: A,B2: A] : ( plus_plus @ A @ B2 @ A3 ) ) ) ) ).
% add.commute
thf(fact_86_add_Oright__cancel,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [B: A,A2: A,C: A] :
( ( ( plus_plus @ A @ B @ A2 )
= ( plus_plus @ A @ C @ A2 ) )
= ( B = C ) ) ) ).
% add.right_cancel
thf(fact_87_add_Oleft__cancel,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( ( plus_plus @ A @ A2 @ B )
= ( plus_plus @ A @ A2 @ C ) )
= ( B = C ) ) ) ).
% add.left_cancel
thf(fact_88_add_Oassoc,axiom,
! [A: $tType] :
( ( semigroup_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( plus_plus @ A @ ( plus_plus @ A @ A2 @ B ) @ C )
= ( plus_plus @ A @ A2 @ ( plus_plus @ A @ B @ C ) ) ) ) ).
% add.assoc
thf(fact_89_group__cancel_Oadd2,axiom,
! [A: $tType] :
( ( comm_monoid_add @ A )
=> ! [B6: A,K: A,B: A,A2: A] :
( ( B6
= ( plus_plus @ A @ K @ B ) )
=> ( ( plus_plus @ A @ A2 @ B6 )
= ( plus_plus @ A @ K @ ( plus_plus @ A @ A2 @ B ) ) ) ) ) ).
% group_cancel.add2
thf(fact_90_group__cancel_Oadd1,axiom,
! [A: $tType] :
( ( comm_monoid_add @ A )
=> ! [A6: A,K: A,A2: A,B: A] :
( ( A6
= ( plus_plus @ A @ K @ A2 ) )
=> ( ( plus_plus @ A @ A6 @ B )
= ( plus_plus @ A @ K @ ( plus_plus @ A @ A2 @ B ) ) ) ) ) ).
% group_cancel.add1
thf(fact_91_add__mono__thms__linordered__semiring_I4_J,axiom,
! [A: $tType] :
( ( ordere779506340up_add @ A )
=> ! [I: A,J: A,K: A,L: A] :
( ( ( I = J )
& ( K = L ) )
=> ( ( plus_plus @ A @ I @ K )
= ( plus_plus @ A @ J @ L ) ) ) ) ).
% add_mono_thms_linordered_semiring(4)
thf(fact_92_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
! [A: $tType] :
( ( ab_semigroup_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( plus_plus @ A @ ( plus_plus @ A @ A2 @ B ) @ C )
= ( plus_plus @ A @ A2 @ ( plus_plus @ A @ B @ C ) ) ) ) ).
% ab_semigroup_add_class.add_ac(1)
thf(fact_93_one__reorient,axiom,
! [A: $tType] :
( ( one @ A )
=> ! [X: A] :
( ( ( one_one @ A )
= X )
= ( X
= ( one_one @ A ) ) ) ) ).
% one_reorient
thf(fact_94_diff__right__commute,axiom,
! [A: $tType] :
( ( cancel146912293up_add @ A )
=> ! [A2: A,C: A,B: A] :
( ( minus_minus @ A @ ( minus_minus @ A @ A2 @ C ) @ B )
= ( minus_minus @ A @ ( minus_minus @ A @ A2 @ B ) @ C ) ) ) ).
% diff_right_commute
thf(fact_95_diff__eq__diff__eq,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A,B: A,C: A,D: A] :
( ( ( minus_minus @ A @ A2 @ B )
= ( minus_minus @ A @ C @ D ) )
=> ( ( A2 = B )
= ( C = D ) ) ) ) ).
% diff_eq_diff_eq
thf(fact_96_add__le__imp__le__right,axiom,
! [A: $tType] :
( ( ordere236663937imp_le @ A )
=> ! [A2: A,C: A,B: A] :
( ( ord_less_eq @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B @ C ) )
=> ( ord_less_eq @ A @ A2 @ B ) ) ) ).
% add_le_imp_le_right
thf(fact_97_add__le__imp__le__left,axiom,
! [A: $tType] :
( ( ordere236663937imp_le @ A )
=> ! [C: A,A2: A,B: A] :
( ( ord_less_eq @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B ) )
=> ( ord_less_eq @ A @ A2 @ B ) ) ) ).
% add_le_imp_le_left
thf(fact_98_le__iff__add,axiom,
! [A: $tType] :
( ( canoni770627133id_add @ A )
=> ( ( ord_less_eq @ A )
= ( ^ [A3: A,B2: A] :
? [C3: A] :
( B2
= ( plus_plus @ A @ A3 @ C3 ) ) ) ) ) ).
% le_iff_add
thf(fact_99_add__right__mono,axiom,
! [A: $tType] :
( ( ordere779506340up_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ord_less_eq @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B @ C ) ) ) ) ).
% add_right_mono
thf(fact_100_less__eqE,axiom,
! [A: $tType] :
( ( canoni770627133id_add @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ~ ! [C4: A] :
( B
!= ( plus_plus @ A @ A2 @ C4 ) ) ) ) ).
% less_eqE
thf(fact_101_add__left__mono,axiom,
! [A: $tType] :
( ( ordere779506340up_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ord_less_eq @ A @ ( plus_plus @ A @ C @ A2 ) @ ( plus_plus @ A @ C @ B ) ) ) ) ).
% add_left_mono
thf(fact_102_add__mono,axiom,
! [A: $tType] :
( ( ordere779506340up_add @ A )
=> ! [A2: A,B: A,C: A,D: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( ord_less_eq @ A @ C @ D )
=> ( ord_less_eq @ A @ ( plus_plus @ A @ A2 @ C ) @ ( plus_plus @ A @ B @ D ) ) ) ) ) ).
% add_mono
thf(fact_103_add__mono__thms__linordered__semiring_I1_J,axiom,
! [A: $tType] :
( ( ordere779506340up_add @ A )
=> ! [I: A,J: A,K: A,L: A] :
( ( ( ord_less_eq @ A @ I @ J )
& ( ord_less_eq @ A @ K @ L ) )
=> ( ord_less_eq @ A @ ( plus_plus @ A @ I @ K ) @ ( plus_plus @ A @ J @ L ) ) ) ) ).
% add_mono_thms_linordered_semiring(1)
thf(fact_104_add__mono__thms__linordered__semiring_I2_J,axiom,
! [A: $tType] :
( ( ordere779506340up_add @ A )
=> ! [I: A,J: A,K: A,L: A] :
( ( ( I = J )
& ( ord_less_eq @ A @ K @ L ) )
=> ( ord_less_eq @ A @ ( plus_plus @ A @ I @ K ) @ ( plus_plus @ A @ J @ L ) ) ) ) ).
% add_mono_thms_linordered_semiring(2)
thf(fact_105_add__mono__thms__linordered__semiring_I3_J,axiom,
! [A: $tType] :
( ( ordere779506340up_add @ A )
=> ! [I: A,J: A,K: A,L: A] :
( ( ( ord_less_eq @ A @ I @ J )
& ( K = L ) )
=> ( ord_less_eq @ A @ ( plus_plus @ A @ I @ K ) @ ( plus_plus @ A @ J @ L ) ) ) ) ).
% add_mono_thms_linordered_semiring(3)
thf(fact_106_diff__eq__diff__less__eq,axiom,
! [A: $tType] :
( ( ordered_ab_group_add @ A )
=> ! [A2: A,B: A,C: A,D: A] :
( ( ( minus_minus @ A @ A2 @ B )
= ( minus_minus @ A @ C @ D ) )
=> ( ( ord_less_eq @ A @ A2 @ B )
= ( ord_less_eq @ A @ C @ D ) ) ) ) ).
% diff_eq_diff_less_eq
thf(fact_107_diff__right__mono,axiom,
! [A: $tType] :
( ( ordered_ab_group_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ord_less_eq @ A @ ( minus_minus @ A @ A2 @ C ) @ ( minus_minus @ A @ B @ C ) ) ) ) ).
% diff_right_mono
thf(fact_108_diff__left__mono,axiom,
! [A: $tType] :
( ( ordered_ab_group_add @ A )
=> ! [B: A,A2: A,C: A] :
( ( ord_less_eq @ A @ B @ A2 )
=> ( ord_less_eq @ A @ ( minus_minus @ A @ C @ A2 ) @ ( minus_minus @ A @ C @ B ) ) ) ) ).
% diff_left_mono
thf(fact_109_diff__mono,axiom,
! [A: $tType] :
( ( ordered_ab_group_add @ A )
=> ! [A2: A,B: A,D: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( ord_less_eq @ A @ D @ C )
=> ( ord_less_eq @ A @ ( minus_minus @ A @ A2 @ C ) @ ( minus_minus @ A @ B @ D ) ) ) ) ) ).
% diff_mono
thf(fact_110_add__implies__diff,axiom,
! [A: $tType] :
( ( cancel1352612707id_add @ A )
=> ! [C: A,B: A,A2: A] :
( ( ( plus_plus @ A @ C @ B )
= A2 )
=> ( C
= ( minus_minus @ A @ A2 @ B ) ) ) ) ).
% add_implies_diff
thf(fact_111_diff__diff__add,axiom,
! [A: $tType] :
( ( cancel146912293up_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( minus_minus @ A @ ( minus_minus @ A @ A2 @ B ) @ C )
= ( minus_minus @ A @ A2 @ ( plus_plus @ A @ B @ C ) ) ) ) ).
% diff_diff_add
thf(fact_112_diff__add__eq__diff__diff__swap,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( minus_minus @ A @ A2 @ ( plus_plus @ A @ B @ C ) )
= ( minus_minus @ A @ ( minus_minus @ A @ A2 @ C ) @ B ) ) ) ).
% diff_add_eq_diff_diff_swap
thf(fact_113_diff__add__eq,axiom,
! [A: $tType] :
( ( ab_group_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( plus_plus @ A @ ( minus_minus @ A @ A2 @ B ) @ C )
= ( minus_minus @ A @ ( plus_plus @ A @ A2 @ C ) @ B ) ) ) ).
% diff_add_eq
thf(fact_114_diff__diff__eq2,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( minus_minus @ A @ A2 @ ( minus_minus @ A @ B @ C ) )
= ( minus_minus @ A @ ( plus_plus @ A @ A2 @ C ) @ B ) ) ) ).
% diff_diff_eq2
thf(fact_115_add__diff__eq,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( plus_plus @ A @ A2 @ ( minus_minus @ A @ B @ C ) )
= ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B ) @ C ) ) ) ).
% add_diff_eq
thf(fact_116_eq__diff__eq,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A,C: A,B: A] :
( ( A2
= ( minus_minus @ A @ C @ B ) )
= ( ( plus_plus @ A @ A2 @ B )
= C ) ) ) ).
% eq_diff_eq
thf(fact_117_diff__eq__eq,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( ( minus_minus @ A @ A2 @ B )
= C )
= ( A2
= ( plus_plus @ A @ C @ B ) ) ) ) ).
% diff_eq_eq
thf(fact_118_group__cancel_Osub1,axiom,
! [A: $tType] :
( ( ab_group_add @ A )
=> ! [A6: A,K: A,A2: A,B: A] :
( ( A6
= ( plus_plus @ A @ K @ A2 ) )
=> ( ( minus_minus @ A @ A6 @ B )
= ( plus_plus @ A @ K @ ( minus_minus @ A @ A2 @ B ) ) ) ) ) ).
% group_cancel.sub1
thf(fact_119_abs__ge__self,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A] : ( ord_less_eq @ A @ A2 @ ( abs_abs @ A @ A2 ) ) ) ).
% abs_ge_self
thf(fact_120_abs__le__D1,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ ( abs_abs @ A @ A2 ) @ B )
=> ( ord_less_eq @ A @ A2 @ B ) ) ) ).
% abs_le_D1
thf(fact_121_abs__one,axiom,
! [A: $tType] :
( ( linordered_idom @ A )
=> ( ( abs_abs @ A @ ( one_one @ A ) )
= ( one_one @ A ) ) ) ).
% abs_one
thf(fact_122_abs__minus__commute,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A,B: A] :
( ( abs_abs @ A @ ( minus_minus @ A @ A2 @ B ) )
= ( abs_abs @ A @ ( minus_minus @ A @ B @ A2 ) ) ) ) ).
% abs_minus_commute
thf(fact_123_max__add__distrib__left,axiom,
! [A: $tType] :
( ( ordere236663937imp_le @ A )
=> ! [X: A,Y: A,Z2: A] :
( ( plus_plus @ A @ ( ord_max @ A @ X @ Y ) @ Z2 )
= ( ord_max @ A @ ( plus_plus @ A @ X @ Z2 ) @ ( plus_plus @ A @ Y @ Z2 ) ) ) ) ).
% max_add_distrib_left
thf(fact_124_max__add__distrib__right,axiom,
! [A: $tType] :
( ( ordere236663937imp_le @ A )
=> ! [X: A,Y: A,Z2: A] :
( ( plus_plus @ A @ X @ ( ord_max @ A @ Y @ Z2 ) )
= ( ord_max @ A @ ( plus_plus @ A @ X @ Y ) @ ( plus_plus @ A @ X @ Z2 ) ) ) ) ).
% max_add_distrib_right
thf(fact_125_max__diff__distrib__left,axiom,
! [A: $tType] :
( ( ordered_ab_group_add @ A )
=> ! [X: A,Y: A,Z2: A] :
( ( minus_minus @ A @ ( ord_max @ A @ X @ Y ) @ Z2 )
= ( ord_max @ A @ ( minus_minus @ A @ X @ Z2 ) @ ( minus_minus @ A @ Y @ Z2 ) ) ) ) ).
% max_diff_distrib_left
thf(fact_126_ordered__cancel__comm__monoid__diff__class_Ole__imp__diff__is__add,axiom,
! [A: $tType] :
( ( ordere623563068d_diff @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( ord_less_eq @ A @ A2 @ B )
=> ( ( ( minus_minus @ A @ B @ A2 )
= C )
= ( B
= ( plus_plus @ A @ C @ A2 ) ) ) ) ) ) ).
% ordered_cancel_comm_monoid_diff_class.le_imp_diff_is_add
thf(fact_127_ordered__cancel__comm__monoid__diff__class_Oadd__diff__inverse,axiom,
! [A: $tType] :
( ( ordere623563068d_diff @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( plus_plus @ A @ A2 @ ( minus_minus @ A @ B @ A2 ) )
= B ) ) ) ).
% ordered_cancel_comm_monoid_diff_class.add_diff_inverse
thf(fact_128_ordered__cancel__comm__monoid__diff__class_Odiff__diff__right,axiom,
! [A: $tType] :
( ( ordere623563068d_diff @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( minus_minus @ A @ C @ ( minus_minus @ A @ B @ A2 ) )
= ( minus_minus @ A @ ( plus_plus @ A @ C @ A2 ) @ B ) ) ) ) ).
% ordered_cancel_comm_monoid_diff_class.diff_diff_right
thf(fact_129_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc2,axiom,
! [A: $tType] :
( ( ordere623563068d_diff @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( minus_minus @ A @ ( plus_plus @ A @ B @ C ) @ A2 )
= ( plus_plus @ A @ ( minus_minus @ A @ B @ A2 ) @ C ) ) ) ) ).
% ordered_cancel_comm_monoid_diff_class.diff_add_assoc2
thf(fact_130_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc2,axiom,
! [A: $tType] :
( ( ordere623563068d_diff @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( plus_plus @ A @ ( minus_minus @ A @ B @ A2 ) @ C )
= ( minus_minus @ A @ ( plus_plus @ A @ B @ C ) @ A2 ) ) ) ) ).
% ordered_cancel_comm_monoid_diff_class.add_diff_assoc2
thf(fact_131_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc,axiom,
! [A: $tType] :
( ( ordere623563068d_diff @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( minus_minus @ A @ ( plus_plus @ A @ C @ B ) @ A2 )
= ( plus_plus @ A @ C @ ( minus_minus @ A @ B @ A2 ) ) ) ) ) ).
% ordered_cancel_comm_monoid_diff_class.diff_add_assoc
thf(fact_132_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc,axiom,
! [A: $tType] :
( ( ordere623563068d_diff @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( plus_plus @ A @ C @ ( minus_minus @ A @ B @ A2 ) )
= ( minus_minus @ A @ ( plus_plus @ A @ C @ B ) @ A2 ) ) ) ) ).
% ordered_cancel_comm_monoid_diff_class.add_diff_assoc
thf(fact_133_ordered__cancel__comm__monoid__diff__class_Ole__diff__conv2,axiom,
! [A: $tType] :
( ( ordere623563068d_diff @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( ord_less_eq @ A @ C @ ( minus_minus @ A @ B @ A2 ) )
= ( ord_less_eq @ A @ ( plus_plus @ A @ C @ A2 ) @ B ) ) ) ) ).
% ordered_cancel_comm_monoid_diff_class.le_diff_conv2
thf(fact_134_le__add__diff,axiom,
! [A: $tType] :
( ( ordere623563068d_diff @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ord_less_eq @ A @ C @ ( minus_minus @ A @ ( plus_plus @ A @ B @ C ) @ A2 ) ) ) ) ).
% le_add_diff
thf(fact_135_add__le__add__imp__diff__le,axiom,
! [A: $tType] :
( ( linordered_semidom @ A )
=> ! [I: A,K: A,N: A,J: A] :
( ( ord_less_eq @ A @ ( plus_plus @ A @ I @ K ) @ N )
=> ( ( ord_less_eq @ A @ N @ ( plus_plus @ A @ J @ K ) )
=> ( ( ord_less_eq @ A @ ( plus_plus @ A @ I @ K ) @ N )
=> ( ( ord_less_eq @ A @ N @ ( plus_plus @ A @ J @ K ) )
=> ( ord_less_eq @ A @ ( minus_minus @ A @ N @ K ) @ J ) ) ) ) ) ) ).
% add_le_add_imp_diff_le
thf(fact_136_diff__add,axiom,
! [A: $tType] :
( ( ordere623563068d_diff @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ A2 @ B )
=> ( ( plus_plus @ A @ ( minus_minus @ A @ B @ A2 ) @ A2 )
= B ) ) ) ).
% diff_add
thf(fact_137_add__le__imp__le__diff,axiom,
! [A: $tType] :
( ( linordered_semidom @ A )
=> ! [I: A,K: A,N: A] :
( ( ord_less_eq @ A @ ( plus_plus @ A @ I @ K ) @ N )
=> ( ord_less_eq @ A @ I @ ( minus_minus @ A @ N @ K ) ) ) ) ).
% add_le_imp_le_diff
thf(fact_138_le__diff__eq,axiom,
! [A: $tType] :
( ( ordered_ab_group_add @ A )
=> ! [A2: A,C: A,B: A] :
( ( ord_less_eq @ A @ A2 @ ( minus_minus @ A @ C @ B ) )
= ( ord_less_eq @ A @ ( plus_plus @ A @ A2 @ B ) @ C ) ) ) ).
% le_diff_eq
thf(fact_139_diff__le__eq,axiom,
! [A: $tType] :
( ( ordered_ab_group_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ ( minus_minus @ A @ A2 @ B ) @ C )
= ( ord_less_eq @ A @ A2 @ ( plus_plus @ A @ C @ B ) ) ) ) ).
% diff_le_eq
thf(fact_140_abs__triangle__ineq,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A,B: A] : ( ord_less_eq @ A @ ( abs_abs @ A @ ( plus_plus @ A @ A2 @ B ) ) @ ( plus_plus @ A @ ( abs_abs @ A @ A2 ) @ ( abs_abs @ A @ B ) ) ) ) ).
% abs_triangle_ineq
thf(fact_141_abs__triangle__ineq2__sym,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A,B: A] : ( ord_less_eq @ A @ ( minus_minus @ A @ ( abs_abs @ A @ A2 ) @ ( abs_abs @ A @ B ) ) @ ( abs_abs @ A @ ( minus_minus @ A @ B @ A2 ) ) ) ) ).
% abs_triangle_ineq2_sym
thf(fact_142_abs__triangle__ineq3,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A,B: A] : ( ord_less_eq @ A @ ( abs_abs @ A @ ( minus_minus @ A @ ( abs_abs @ A @ A2 ) @ ( abs_abs @ A @ B ) ) ) @ ( abs_abs @ A @ ( minus_minus @ A @ A2 @ B ) ) ) ) ).
% abs_triangle_ineq3
thf(fact_143_abs__triangle__ineq2,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A,B: A] : ( ord_less_eq @ A @ ( minus_minus @ A @ ( abs_abs @ A @ A2 ) @ ( abs_abs @ A @ B ) ) @ ( abs_abs @ A @ ( minus_minus @ A @ A2 @ B ) ) ) ) ).
% abs_triangle_ineq2
thf(fact_144_abs__diff__triangle__ineq,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A,B: A,C: A,D: A] : ( ord_less_eq @ A @ ( abs_abs @ A @ ( minus_minus @ A @ ( plus_plus @ A @ A2 @ B ) @ ( plus_plus @ A @ C @ D ) ) ) @ ( plus_plus @ A @ ( abs_abs @ A @ ( minus_minus @ A @ A2 @ C ) ) @ ( abs_abs @ A @ ( minus_minus @ A @ B @ D ) ) ) ) ) ).
% abs_diff_triangle_ineq
thf(fact_145_abs__triangle__ineq4,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A,B: A] : ( ord_less_eq @ A @ ( abs_abs @ A @ ( minus_minus @ A @ A2 @ B ) ) @ ( plus_plus @ A @ ( abs_abs @ A @ A2 ) @ ( abs_abs @ A @ B ) ) ) ) ).
% abs_triangle_ineq4
thf(fact_146_abs__diff__le__iff,axiom,
! [A: $tType] :
( ( linordered_idom @ A )
=> ! [X: A,A2: A,R: A] :
( ( ord_less_eq @ A @ ( abs_abs @ A @ ( minus_minus @ A @ X @ A2 ) ) @ R )
= ( ( ord_less_eq @ A @ ( minus_minus @ A @ A2 @ R ) @ X )
& ( ord_less_eq @ A @ X @ ( plus_plus @ A @ A2 @ R ) ) ) ) ) ).
% abs_diff_le_iff
thf(fact_147_rts1,axiom,
! [P: nat,T: real,I3: nat] :
( ( ( genClo1015804716orrect @ P @ T )
& ( ord_less_eq @ real @ ( genClo1163638703lle_te @ P @ ( plus_plus @ nat @ I3 @ ( one_one @ nat ) ) ) @ T ) )
=> ( ord_less_eq @ real @ genClo1651033342e_rmin @ ( minus_minus @ real @ T @ ( genClo1163638703lle_te @ P @ I3 ) ) ) ) ).
% rts1
thf(fact_148_rts1d,axiom,
! [P2: nat,I: nat] :
( ( genClo1015804716orrect @ P2 @ ( genClo1163638703lle_te @ P2 @ ( plus_plus @ nat @ I @ ( one_one @ nat ) ) ) )
=> ( ord_less_eq @ real @ genClo1651033342e_rmin @ ( minus_minus @ real @ ( genClo1163638703lle_te @ P2 @ ( plus_plus @ nat @ I @ ( one_one @ nat ) ) ) @ ( genClo1163638703lle_te @ P2 @ I ) ) ) ) ).
% rts1d
thf(fact_149_rts0,axiom,
! [P: nat,T: real,I3: nat] :
( ( ( genClo1015804716orrect @ P @ T )
& ( ord_less_eq @ real @ T @ ( genClo1163638703lle_te @ P @ ( plus_plus @ nat @ I3 @ ( one_one @ nat ) ) ) ) )
=> ( ord_less_eq @ real @ ( minus_minus @ real @ T @ ( genClo1163638703lle_te @ P @ I3 ) ) @ genClo1650508560e_rmax ) ) ).
% rts0
thf(fact_150_rts0d,axiom,
! [P2: nat,I: nat] :
( ( genClo1015804716orrect @ P2 @ ( genClo1163638703lle_te @ P2 @ ( plus_plus @ nat @ I @ ( one_one @ nat ) ) ) )
=> ( ord_less_eq @ real @ ( minus_minus @ real @ ( genClo1163638703lle_te @ P2 @ ( plus_plus @ nat @ I @ ( one_one @ nat ) ) ) @ ( genClo1163638703lle_te @ P2 @ I ) ) @ genClo1650508560e_rmax ) ) ).
% rts0d
thf(fact_151_okRead2__def,axiom,
( genClo293725282kRead2
= ( ^ [F2: nat > real,G2: nat > real,X2: real,Ppred: nat > $o] :
! [P4: nat] :
( ( Ppred @ P4 )
=> ( ord_less_eq @ real @ ( abs_abs @ real @ ( minus_minus @ real @ ( F2 @ P4 ) @ ( G2 @ P4 ) ) ) @ X2 ) ) ) ) ).
% okRead2_def
thf(fact_152_sin__bound__lemma,axiom,
! [X: real,Y: real,U: real,V: real] :
( ( X = Y )
=> ( ( ord_less_eq @ real @ ( abs_abs @ real @ U ) @ V )
=> ( ord_less_eq @ real @ ( abs_abs @ real @ ( minus_minus @ real @ ( plus_plus @ real @ X @ U ) @ Y ) ) @ V ) ) ) ).
% sin_bound_lemma
thf(fact_153_eq__diff__eq_H,axiom,
! [X: real,Y: real,Z2: real] :
( ( X
= ( minus_minus @ real @ Y @ Z2 ) )
= ( Y
= ( plus_plus @ real @ X @ Z2 ) ) ) ).
% eq_diff_eq'
thf(fact_154_beta__bound2,axiom,
! [P2: nat,I: nat,Q2: nat] :
( ( genClo1015804716orrect @ P2 @ ( genClo1163638703lle_te @ P2 @ ( plus_plus @ nat @ I @ ( one_one @ nat ) ) ) )
=> ( ( genClo1015804716orrect @ Q2 @ ( genClo1163638703lle_te @ Q2 @ I ) )
=> ( ord_less_eq @ real @ ( minus_minus @ real @ ( genClo1163638703lle_te @ P2 @ ( plus_plus @ nat @ I @ ( one_one @ nat ) ) ) @ ( genClo1163638703lle_te @ Q2 @ I ) ) @ ( plus_plus @ real @ genClo1650508560e_rmax @ genClo1278781456e_beta ) ) ) ) ).
% beta_bound2
thf(fact_155_rts2b,axiom,
! [P: nat,Q3: nat,I3: nat] :
( ( ( genClo1015804716orrect @ P @ ( genClo1163638703lle_te @ P @ I3 ) )
& ( genClo1015804716orrect @ Q3 @ ( genClo1163638703lle_te @ Q3 @ I3 ) ) )
=> ( ord_less_eq @ real @ ( abs_abs @ real @ ( minus_minus @ real @ ( genClo1163638703lle_te @ P @ I3 ) @ ( genClo1163638703lle_te @ Q3 @ I3 ) ) ) @ genClo1278781456e_beta ) ) ).
% rts2b
thf(fact_156_nat__add__left__cancel__le,axiom,
! [K: nat,M: nat,N: nat] :
( ( ord_less_eq @ nat @ ( plus_plus @ nat @ K @ M ) @ ( plus_plus @ nat @ K @ N ) )
= ( ord_less_eq @ nat @ M @ N ) ) ).
% nat_add_left_cancel_le
thf(fact_157_diff__diff__cancel,axiom,
! [I: nat,N: nat] :
( ( ord_less_eq @ nat @ I @ N )
=> ( ( minus_minus @ nat @ N @ ( minus_minus @ nat @ N @ I ) )
= I ) ) ).
% diff_diff_cancel
thf(fact_158_diff__diff__left,axiom,
! [I: nat,J: nat,K: nat] :
( ( minus_minus @ nat @ ( minus_minus @ nat @ I @ J ) @ K )
= ( minus_minus @ nat @ I @ ( plus_plus @ nat @ J @ K ) ) ) ).
% diff_diff_left
thf(fact_159_Nat_Odiff__diff__right,axiom,
! [K: nat,J: nat,I: nat] :
( ( ord_less_eq @ nat @ K @ J )
=> ( ( minus_minus @ nat @ I @ ( minus_minus @ nat @ J @ K ) )
= ( minus_minus @ nat @ ( plus_plus @ nat @ I @ K ) @ J ) ) ) ).
% Nat.diff_diff_right
thf(fact_160_Nat_Oadd__diff__assoc2,axiom,
! [K: nat,J: nat,I: nat] :
( ( ord_less_eq @ nat @ K @ J )
=> ( ( plus_plus @ nat @ ( minus_minus @ nat @ J @ K ) @ I )
= ( minus_minus @ nat @ ( plus_plus @ nat @ J @ I ) @ K ) ) ) ).
% Nat.add_diff_assoc2
thf(fact_161_Nat_Oadd__diff__assoc,axiom,
! [K: nat,J: nat,I: nat] :
( ( ord_less_eq @ nat @ K @ J )
=> ( ( plus_plus @ nat @ I @ ( minus_minus @ nat @ J @ K ) )
= ( minus_minus @ nat @ ( plus_plus @ nat @ I @ J ) @ K ) ) ) ).
% Nat.add_diff_assoc
thf(fact_162_Nat_Oex__has__greatest__nat,axiom,
! [P3: nat > $o,K: nat,B: nat] :
( ( P3 @ K )
=> ( ! [Y2: nat] :
( ( P3 @ Y2 )
=> ( ord_less_eq @ nat @ Y2 @ B ) )
=> ? [X3: nat] :
( ( P3 @ X3 )
& ! [Y5: nat] :
( ( P3 @ Y5 )
=> ( ord_less_eq @ nat @ Y5 @ X3 ) ) ) ) ) ).
% Nat.ex_has_greatest_nat
thf(fact_163_nat__le__linear,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq @ nat @ M @ N )
| ( ord_less_eq @ nat @ N @ M ) ) ).
% nat_le_linear
thf(fact_164_diff__le__mono2,axiom,
! [M: nat,N: nat,L: nat] :
( ( ord_less_eq @ nat @ M @ N )
=> ( ord_less_eq @ nat @ ( minus_minus @ nat @ L @ N ) @ ( minus_minus @ nat @ L @ M ) ) ) ).
% diff_le_mono2
thf(fact_165_le__diff__iff_H,axiom,
! [A2: nat,C: nat,B: nat] :
( ( ord_less_eq @ nat @ A2 @ C )
=> ( ( ord_less_eq @ nat @ B @ C )
=> ( ( ord_less_eq @ nat @ ( minus_minus @ nat @ C @ A2 ) @ ( minus_minus @ nat @ C @ B ) )
= ( ord_less_eq @ nat @ B @ A2 ) ) ) ) ).
% le_diff_iff'
thf(fact_166_diff__le__self,axiom,
! [M: nat,N: nat] : ( ord_less_eq @ nat @ ( minus_minus @ nat @ M @ N ) @ M ) ).
% diff_le_self
thf(fact_167_diff__le__mono,axiom,
! [M: nat,N: nat,L: nat] :
( ( ord_less_eq @ nat @ M @ N )
=> ( ord_less_eq @ nat @ ( minus_minus @ nat @ M @ L ) @ ( minus_minus @ nat @ N @ L ) ) ) ).
% diff_le_mono
thf(fact_168_Nat_Odiff__diff__eq,axiom,
! [K: nat,M: nat,N: nat] :
( ( ord_less_eq @ nat @ K @ M )
=> ( ( ord_less_eq @ nat @ K @ N )
=> ( ( minus_minus @ nat @ ( minus_minus @ nat @ M @ K ) @ ( minus_minus @ nat @ N @ K ) )
= ( minus_minus @ nat @ M @ N ) ) ) ) ).
% Nat.diff_diff_eq
thf(fact_169_le__diff__iff,axiom,
! [K: nat,M: nat,N: nat] :
( ( ord_less_eq @ nat @ K @ M )
=> ( ( ord_less_eq @ nat @ K @ N )
=> ( ( ord_less_eq @ nat @ ( minus_minus @ nat @ M @ K ) @ ( minus_minus @ nat @ N @ K ) )
= ( ord_less_eq @ nat @ M @ N ) ) ) ) ).
% le_diff_iff
thf(fact_170_eq__diff__iff,axiom,
! [K: nat,M: nat,N: nat] :
( ( ord_less_eq @ nat @ K @ M )
=> ( ( ord_less_eq @ nat @ K @ N )
=> ( ( ( minus_minus @ nat @ M @ K )
= ( minus_minus @ nat @ N @ K ) )
= ( M = N ) ) ) ) ).
% eq_diff_iff
thf(fact_171_le__antisym,axiom,
! [M: nat,N: nat] :
( ( ord_less_eq @ nat @ M @ N )
=> ( ( ord_less_eq @ nat @ N @ M )
=> ( M = N ) ) ) ).
% le_antisym
thf(fact_172_eq__imp__le,axiom,
! [M: nat,N: nat] :
( ( M = N )
=> ( ord_less_eq @ nat @ M @ N ) ) ).
% eq_imp_le
thf(fact_173_le__trans,axiom,
! [I: nat,J: nat,K: nat] :
( ( ord_less_eq @ nat @ I @ J )
=> ( ( ord_less_eq @ nat @ J @ K )
=> ( ord_less_eq @ nat @ I @ K ) ) ) ).
% le_trans
thf(fact_174_le__refl,axiom,
! [N: nat] : ( ord_less_eq @ nat @ N @ N ) ).
% le_refl
thf(fact_175_Nat_Ole__imp__diff__is__add,axiom,
! [I: nat,J: nat,K: nat] :
( ( ord_less_eq @ nat @ I @ J )
=> ( ( ( minus_minus @ nat @ J @ I )
= K )
= ( J
= ( plus_plus @ nat @ K @ I ) ) ) ) ).
% Nat.le_imp_diff_is_add
thf(fact_176_nat__minus__add__max,axiom,
! [N: nat,M: nat] :
( ( plus_plus @ nat @ ( minus_minus @ nat @ N @ M ) @ M )
= ( ord_max @ nat @ N @ M ) ) ).
% nat_minus_add_max
thf(fact_177_diff__add__inverse2,axiom,
! [M: nat,N: nat] :
( ( minus_minus @ nat @ ( plus_plus @ nat @ M @ N ) @ N )
= M ) ).
% diff_add_inverse2
thf(fact_178_diff__add__inverse,axiom,
! [N: nat,M: nat] :
( ( minus_minus @ nat @ ( plus_plus @ nat @ N @ M ) @ N )
= M ) ).
% diff_add_inverse
thf(fact_179_Nat_Odiff__add__assoc2,axiom,
! [K: nat,J: nat,I: nat] :
( ( ord_less_eq @ nat @ K @ J )
=> ( ( minus_minus @ nat @ ( plus_plus @ nat @ J @ I ) @ K )
= ( plus_plus @ nat @ ( minus_minus @ nat @ J @ K ) @ I ) ) ) ).
% Nat.diff_add_assoc2
thf(fact_180_Nat_Odiff__add__assoc,axiom,
! [K: nat,J: nat,I: nat] :
( ( ord_less_eq @ nat @ K @ J )
=> ( ( minus_minus @ nat @ ( plus_plus @ nat @ I @ J ) @ K )
= ( plus_plus @ nat @ I @ ( minus_minus @ nat @ J @ K ) ) ) ) ).
% Nat.diff_add_assoc
thf(fact_181_Nat_Ole__diff__conv2,axiom,
! [K: nat,J: nat,I: nat] :
( ( ord_less_eq @ nat @ K @ J )
=> ( ( ord_less_eq @ nat @ I @ ( minus_minus @ nat @ J @ K ) )
= ( ord_less_eq @ nat @ ( plus_plus @ nat @ I @ K ) @ J ) ) ) ).
% Nat.le_diff_conv2
thf(fact_182_le__diff__conv,axiom,
! [J: nat,K: nat,I: nat] :
( ( ord_less_eq @ nat @ ( minus_minus @ nat @ J @ K ) @ I )
= ( ord_less_eq @ nat @ J @ ( plus_plus @ nat @ I @ K ) ) ) ).
% le_diff_conv
thf(fact_183_diff__cancel2,axiom,
! [M: nat,K: nat,N: nat] :
( ( minus_minus @ nat @ ( plus_plus @ nat @ M @ K ) @ ( plus_plus @ nat @ N @ K ) )
= ( minus_minus @ nat @ M @ N ) ) ).
% diff_cancel2
thf(fact_184_Nat_Odiff__cancel,axiom,
! [K: nat,M: nat,N: nat] :
( ( minus_minus @ nat @ ( plus_plus @ nat @ K @ M ) @ ( plus_plus @ nat @ K @ N ) )
= ( minus_minus @ nat @ M @ N ) ) ).
% Nat.diff_cancel
thf(fact_185_nat__add__max__right,axiom,
! [M: nat,N: nat,Q2: nat] :
( ( plus_plus @ nat @ M @ ( ord_max @ nat @ N @ Q2 ) )
= ( ord_max @ nat @ ( plus_plus @ nat @ M @ N ) @ ( plus_plus @ nat @ M @ Q2 ) ) ) ).
% nat_add_max_right
thf(fact_186_nat__add__max__left,axiom,
! [M: nat,N: nat,Q2: nat] :
( ( plus_plus @ nat @ ( ord_max @ nat @ M @ N ) @ Q2 )
= ( ord_max @ nat @ ( plus_plus @ nat @ M @ Q2 ) @ ( plus_plus @ nat @ N @ Q2 ) ) ) ).
% nat_add_max_left
thf(fact_187_nat__le__iff__add,axiom,
( ( ord_less_eq @ nat )
= ( ^ [M2: nat,N2: nat] :
? [K2: nat] :
( N2
= ( plus_plus @ nat @ M2 @ K2 ) ) ) ) ).
% nat_le_iff_add
thf(fact_188_trans__le__add2,axiom,
! [I: nat,J: nat,M: nat] :
( ( ord_less_eq @ nat @ I @ J )
=> ( ord_less_eq @ nat @ I @ ( plus_plus @ nat @ M @ J ) ) ) ).
% trans_le_add2
thf(fact_189_trans__le__add1,axiom,
! [I: nat,J: nat,M: nat] :
( ( ord_less_eq @ nat @ I @ J )
=> ( ord_less_eq @ nat @ I @ ( plus_plus @ nat @ J @ M ) ) ) ).
% trans_le_add1
thf(fact_190_add__le__mono1,axiom,
! [I: nat,J: nat,K: nat] :
( ( ord_less_eq @ nat @ I @ J )
=> ( ord_less_eq @ nat @ ( plus_plus @ nat @ I @ K ) @ ( plus_plus @ nat @ J @ K ) ) ) ).
% add_le_mono1
thf(fact_191_add__le__mono,axiom,
! [I: nat,J: nat,K: nat,L: nat] :
( ( ord_less_eq @ nat @ I @ J )
=> ( ( ord_less_eq @ nat @ K @ L )
=> ( ord_less_eq @ nat @ ( plus_plus @ nat @ I @ K ) @ ( plus_plus @ nat @ J @ L ) ) ) ) ).
% add_le_mono
thf(fact_192_le__Suc__ex,axiom,
! [K: nat,L: nat] :
( ( ord_less_eq @ nat @ K @ L )
=> ? [N3: nat] :
( L
= ( plus_plus @ nat @ K @ N3 ) ) ) ).
% le_Suc_ex
thf(fact_193_add__leD2,axiom,
! [M: nat,K: nat,N: nat] :
( ( ord_less_eq @ nat @ ( plus_plus @ nat @ M @ K ) @ N )
=> ( ord_less_eq @ nat @ K @ N ) ) ).
% add_leD2
thf(fact_194_add__leD1,axiom,
! [M: nat,K: nat,N: nat] :
( ( ord_less_eq @ nat @ ( plus_plus @ nat @ M @ K ) @ N )
=> ( ord_less_eq @ nat @ M @ N ) ) ).
% add_leD1
thf(fact_195_le__add2,axiom,
! [N: nat,M: nat] : ( ord_less_eq @ nat @ N @ ( plus_plus @ nat @ M @ N ) ) ).
% le_add2
thf(fact_196_le__add1,axiom,
! [N: nat,M: nat] : ( ord_less_eq @ nat @ N @ ( plus_plus @ nat @ N @ M ) ) ).
% le_add1
thf(fact_197_add__leE,axiom,
! [M: nat,K: nat,N: nat] :
( ( ord_less_eq @ nat @ ( plus_plus @ nat @ M @ K ) @ N )
=> ~ ( ( ord_less_eq @ nat @ M @ N )
=> ~ ( ord_less_eq @ nat @ K @ N ) ) ) ).
% add_leE
thf(fact_198_nonoverlap,axiom,
ord_less_eq @ real @ genClo1278781456e_beta @ genClo1651033342e_rmin ).
% nonoverlap
thf(fact_199_rts2a,axiom,
! [P: nat,Q3: nat,T: real,I3: nat] :
( ( ( genClo1015804716orrect @ P @ T )
& ( genClo1015804716orrect @ Q3 @ T )
& ( ord_less_eq @ real @ ( plus_plus @ real @ ( genClo1163638703lle_te @ Q3 @ I3 ) @ genClo1278781456e_beta ) @ T ) )
=> ( ord_less_eq @ real @ ( genClo1163638703lle_te @ P @ I3 ) @ T ) ) ).
% rts2a
thf(fact_200_readerror,axiom,
! [P: nat,Q3: nat,I3: nat] :
( ( ( genClo1015804716orrect @ P @ ( genClo1163638703lle_te @ P @ ( plus_plus @ nat @ I3 @ ( one_one @ nat ) ) ) )
& ( genClo1015804716orrect @ Q3 @ ( genClo1163638703lle_te @ P @ ( plus_plus @ nat @ I3 @ ( one_one @ nat ) ) ) ) )
=> ( ord_less_eq @ real @ ( abs_abs @ real @ ( minus_minus @ real @ ( genClo1400225944_theta @ P @ ( plus_plus @ nat @ I3 @ ( one_one @ nat ) ) @ Q3 ) @ ( genClo1160817912lle_IC @ Q3 @ I3 @ ( genClo1163638703lle_te @ P @ ( plus_plus @ nat @ I3 @ ( one_one @ nat ) ) ) ) ) ) @ genClo721845095Lambda ) ) ).
% readerror
thf(fact_201_okRead1__def,axiom,
( genClo293725281kRead1
= ( ^ [F2: nat > real,X2: real,Ppred: nat > $o] :
! [L2: nat,M2: nat] :
( ( ( Ppred @ L2 )
& ( Ppred @ M2 ) )
=> ( ord_less_eq @ real @ ( abs_abs @ real @ ( minus_minus @ real @ ( F2 @ L2 ) @ ( F2 @ M2 ) ) ) @ X2 ) ) ) ) ).
% okRead1_def
thf(fact_202_beta__bound1,axiom,
! [P2: nat,I: nat,Q2: nat] :
( ( genClo1015804716orrect @ P2 @ ( genClo1163638703lle_te @ P2 @ ( plus_plus @ nat @ I @ ( one_one @ nat ) ) ) )
=> ( ( genClo1015804716orrect @ Q2 @ ( genClo1163638703lle_te @ P2 @ ( plus_plus @ nat @ I @ ( one_one @ nat ) ) ) )
=> ( ord_less_eq @ real @ ( zero_zero @ real ) @ ( minus_minus @ real @ ( genClo1163638703lle_te @ P2 @ ( plus_plus @ nat @ I @ ( one_one @ nat ) ) ) @ ( genClo1163638703lle_te @ Q2 @ I ) ) ) ) ) ).
% beta_bound1
thf(fact_203_le__zero__eq,axiom,
! [A: $tType] :
( ( canoni770627133id_add @ A )
=> ! [N: A] :
( ( ord_less_eq @ A @ N @ ( zero_zero @ A ) )
= ( N
= ( zero_zero @ A ) ) ) ) ).
% le_zero_eq
thf(fact_204_zero__eq__add__iff__both__eq__0,axiom,
! [A: $tType] :
( ( canoni770627133id_add @ A )
=> ! [X: A,Y: A] :
( ( ( zero_zero @ A )
= ( plus_plus @ A @ X @ Y ) )
= ( ( X
= ( zero_zero @ A ) )
& ( Y
= ( zero_zero @ A ) ) ) ) ) ).
% zero_eq_add_iff_both_eq_0
thf(fact_205_add__eq__0__iff__both__eq__0,axiom,
! [A: $tType] :
( ( canoni770627133id_add @ A )
=> ! [X: A,Y: A] :
( ( ( plus_plus @ A @ X @ Y )
= ( zero_zero @ A ) )
= ( ( X
= ( zero_zero @ A ) )
& ( Y
= ( zero_zero @ A ) ) ) ) ) ).
% add_eq_0_iff_both_eq_0
thf(fact_206_add__cancel__right__right,axiom,
! [A: $tType] :
( ( cancel1352612707id_add @ A )
=> ! [A2: A,B: A] :
( ( A2
= ( plus_plus @ A @ A2 @ B ) )
= ( B
= ( zero_zero @ A ) ) ) ) ).
% add_cancel_right_right
thf(fact_207_add__cancel__right__left,axiom,
! [A: $tType] :
( ( cancel1352612707id_add @ A )
=> ! [A2: A,B: A] :
( ( A2
= ( plus_plus @ A @ B @ A2 ) )
= ( B
= ( zero_zero @ A ) ) ) ) ).
% add_cancel_right_left
thf(fact_208_add__cancel__left__right,axiom,
! [A: $tType] :
( ( cancel1352612707id_add @ A )
=> ! [A2: A,B: A] :
( ( ( plus_plus @ A @ A2 @ B )
= A2 )
= ( B
= ( zero_zero @ A ) ) ) ) ).
% add_cancel_left_right
thf(fact_209_add__cancel__left__left,axiom,
! [A: $tType] :
( ( cancel1352612707id_add @ A )
=> ! [B: A,A2: A] :
( ( ( plus_plus @ A @ B @ A2 )
= A2 )
= ( B
= ( zero_zero @ A ) ) ) ) ).
% add_cancel_left_left
thf(fact_210_double__zero__sym,axiom,
! [A: $tType] :
( ( linord219039673up_add @ A )
=> ! [A2: A] :
( ( ( zero_zero @ A )
= ( plus_plus @ A @ A2 @ A2 ) )
= ( A2
= ( zero_zero @ A ) ) ) ) ).
% double_zero_sym
thf(fact_211_double__zero,axiom,
! [A: $tType] :
( ( linord219039673up_add @ A )
=> ! [A2: A] :
( ( ( plus_plus @ A @ A2 @ A2 )
= ( zero_zero @ A ) )
= ( A2
= ( zero_zero @ A ) ) ) ) ).
% double_zero
thf(fact_212_add_Oright__neutral,axiom,
! [A: $tType] :
( ( monoid_add @ A )
=> ! [A2: A] :
( ( plus_plus @ A @ A2 @ ( zero_zero @ A ) )
= A2 ) ) ).
% add.right_neutral
thf(fact_213_add_Oleft__neutral,axiom,
! [A: $tType] :
( ( monoid_add @ A )
=> ! [A2: A] :
( ( plus_plus @ A @ ( zero_zero @ A ) @ A2 )
= A2 ) ) ).
% add.left_neutral
thf(fact_214_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
! [A: $tType] :
( ( cancel1352612707id_add @ A )
=> ! [A2: A] :
( ( minus_minus @ A @ A2 @ A2 )
= ( zero_zero @ A ) ) ) ).
% cancel_comm_monoid_add_class.diff_cancel
thf(fact_215_diff__zero,axiom,
! [A: $tType] :
( ( cancel1352612707id_add @ A )
=> ! [A2: A] :
( ( minus_minus @ A @ A2 @ ( zero_zero @ A ) )
= A2 ) ) ).
% diff_zero
thf(fact_216_zero__diff,axiom,
! [A: $tType] :
( ( comm_monoid_diff @ A )
=> ! [A2: A] :
( ( minus_minus @ A @ ( zero_zero @ A ) @ A2 )
= ( zero_zero @ A ) ) ) ).
% zero_diff
thf(fact_217_diff__0__right,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A] :
( ( minus_minus @ A @ A2 @ ( zero_zero @ A ) )
= A2 ) ) ).
% diff_0_right
thf(fact_218_diff__self,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A] :
( ( minus_minus @ A @ A2 @ A2 )
= ( zero_zero @ A ) ) ) ).
% diff_self
thf(fact_219_abs__zero,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ( ( abs_abs @ A @ ( zero_zero @ A ) )
= ( zero_zero @ A ) ) ) ).
% abs_zero
thf(fact_220_abs__eq__0,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A] :
( ( ( abs_abs @ A @ A2 )
= ( zero_zero @ A ) )
= ( A2
= ( zero_zero @ A ) ) ) ) ).
% abs_eq_0
thf(fact_221_abs__0__eq,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A] :
( ( ( zero_zero @ A )
= ( abs_abs @ A @ A2 ) )
= ( A2
= ( zero_zero @ A ) ) ) ) ).
% abs_0_eq
thf(fact_222_abs__0,axiom,
! [A: $tType] :
( ( idom_abs_sgn @ A )
=> ( ( abs_abs @ A @ ( zero_zero @ A ) )
= ( zero_zero @ A ) ) ) ).
% abs_0
thf(fact_223_add__le__same__cancel1,axiom,
! [A: $tType] :
( ( ordere516151231imp_le @ A )
=> ! [B: A,A2: A] :
( ( ord_less_eq @ A @ ( plus_plus @ A @ B @ A2 ) @ B )
= ( ord_less_eq @ A @ A2 @ ( zero_zero @ A ) ) ) ) ).
% add_le_same_cancel1
thf(fact_224_add__le__same__cancel2,axiom,
! [A: $tType] :
( ( ordere516151231imp_le @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ ( plus_plus @ A @ A2 @ B ) @ B )
= ( ord_less_eq @ A @ A2 @ ( zero_zero @ A ) ) ) ) ).
% add_le_same_cancel2
thf(fact_225_le__add__same__cancel1,axiom,
! [A: $tType] :
( ( ordere516151231imp_le @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ A2 @ ( plus_plus @ A @ A2 @ B ) )
= ( ord_less_eq @ A @ ( zero_zero @ A ) @ B ) ) ) ).
% le_add_same_cancel1
thf(fact_226_le__add__same__cancel2,axiom,
! [A: $tType] :
( ( ordere516151231imp_le @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ A2 @ ( plus_plus @ A @ B @ A2 ) )
= ( ord_less_eq @ A @ ( zero_zero @ A ) @ B ) ) ) ).
% le_add_same_cancel2
thf(fact_227_double__add__le__zero__iff__single__add__le__zero,axiom,
! [A: $tType] :
( ( linord219039673up_add @ A )
=> ! [A2: A] :
( ( ord_less_eq @ A @ ( plus_plus @ A @ A2 @ A2 ) @ ( zero_zero @ A ) )
= ( ord_less_eq @ A @ A2 @ ( zero_zero @ A ) ) ) ) ).
% double_add_le_zero_iff_single_add_le_zero
thf(fact_228_zero__le__double__add__iff__zero__le__single__add,axiom,
! [A: $tType] :
( ( linord219039673up_add @ A )
=> ! [A2: A] :
( ( ord_less_eq @ A @ ( zero_zero @ A ) @ ( plus_plus @ A @ A2 @ A2 ) )
= ( ord_less_eq @ A @ ( zero_zero @ A ) @ A2 ) ) ) ).
% zero_le_double_add_iff_zero_le_single_add
thf(fact_229_diff__ge__0__iff__ge,axiom,
! [A: $tType] :
( ( ordered_ab_group_add @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ ( zero_zero @ A ) @ ( minus_minus @ A @ A2 @ B ) )
= ( ord_less_eq @ A @ B @ A2 ) ) ) ).
% diff_ge_0_iff_ge
thf(fact_230_diff__add__zero,axiom,
! [A: $tType] :
( ( comm_monoid_diff @ A )
=> ! [A2: A,B: A] :
( ( minus_minus @ A @ A2 @ ( plus_plus @ A @ A2 @ B ) )
= ( zero_zero @ A ) ) ) ).
% diff_add_zero
thf(fact_231_abs__of__nonneg,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A] :
( ( ord_less_eq @ A @ ( zero_zero @ A ) @ A2 )
=> ( ( abs_abs @ A @ A2 )
= A2 ) ) ) ).
% abs_of_nonneg
thf(fact_232_abs__le__self__iff,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A] :
( ( ord_less_eq @ A @ ( abs_abs @ A @ A2 ) @ A2 )
= ( ord_less_eq @ A @ ( zero_zero @ A ) @ A2 ) ) ) ).
% abs_le_self_iff
thf(fact_233_abs__le__zero__iff,axiom,
! [A: $tType] :
( ( ordere142940540dd_abs @ A )
=> ! [A2: A] :
( ( ord_less_eq @ A @ ( abs_abs @ A @ A2 ) @ ( zero_zero @ A ) )
= ( A2
= ( zero_zero @ A ) ) ) ) ).
% abs_le_zero_iff
thf(fact_234_zero__le,axiom,
! [A: $tType] :
( ( canoni770627133id_add @ A )
=> ! [X: A] : ( ord_less_eq @ A @ ( zero_zero @ A ) @ X ) ) ).
% zero_le
thf(fact_235_diff__commute,axiom,
! [I: nat,J: nat,K: nat] :
( ( minus_minus @ nat @ ( minus_minus @ nat @ I @ J ) @ K )
= ( minus_minus @ nat @ ( minus_minus @ nat @ I @ K ) @ J ) ) ).
% diff_commute
thf(fact_236_zero__reorient,axiom,
! [A: $tType] :
( ( zero @ A )
=> ! [X: A] :
( ( ( zero_zero @ A )
= X )
= ( X
= ( zero_zero @ A ) ) ) ) ).
% zero_reorient
thf(fact_237_abs__eq__0__iff,axiom,
! [A: $tType] :
( ( idom_abs_sgn @ A )
=> ! [A2: A] :
( ( ( abs_abs @ A @ A2 )
= ( zero_zero @ A ) )
= ( A2
= ( zero_zero @ A ) ) ) ) ).
% abs_eq_0_iff
thf(fact_238_eq__iff__diff__eq__0,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ( ( ^ [Y3: A,Z: A] : ( Y3 = Z ) )
= ( ^ [A3: A,B2: A] :
( ( minus_minus @ A @ A3 @ B2 )
= ( zero_zero @ A ) ) ) ) ) ).
% eq_iff_diff_eq_0
thf(fact_239_zero__neq__one,axiom,
! [A: $tType] :
( ( zero_neq_one @ A )
=> ( ( zero_zero @ A )
!= ( one_one @ A ) ) ) ).
% zero_neq_one
thf(fact_240_add_Ogroup__left__neutral,axiom,
! [A: $tType] :
( ( group_add @ A )
=> ! [A2: A] :
( ( plus_plus @ A @ ( zero_zero @ A ) @ A2 )
= A2 ) ) ).
% add.group_left_neutral
thf(fact_241_add_Ocomm__neutral,axiom,
! [A: $tType] :
( ( comm_monoid_add @ A )
=> ! [A2: A] :
( ( plus_plus @ A @ A2 @ ( zero_zero @ A ) )
= A2 ) ) ).
% add.comm_neutral
thf(fact_242_comm__monoid__add__class_Oadd__0,axiom,
! [A: $tType] :
( ( comm_monoid_add @ A )
=> ! [A2: A] :
( ( plus_plus @ A @ ( zero_zero @ A ) @ A2 )
= A2 ) ) ).
% comm_monoid_add_class.add_0
thf(fact_243_add__decreasing,axiom,
! [A: $tType] :
( ( ordere216010020id_add @ A )
=> ! [A2: A,C: A,B: A] :
( ( ord_less_eq @ A @ A2 @ ( zero_zero @ A ) )
=> ( ( ord_less_eq @ A @ C @ B )
=> ( ord_less_eq @ A @ ( plus_plus @ A @ A2 @ C ) @ B ) ) ) ) ).
% add_decreasing
thf(fact_244_add__increasing,axiom,
! [A: $tType] :
( ( ordere216010020id_add @ A )
=> ! [A2: A,B: A,C: A] :
( ( ord_less_eq @ A @ ( zero_zero @ A ) @ A2 )
=> ( ( ord_less_eq @ A @ B @ C )
=> ( ord_less_eq @ A @ B @ ( plus_plus @ A @ A2 @ C ) ) ) ) ) ).
% add_increasing
thf(fact_245_add__decreasing2,axiom,
! [A: $tType] :
( ( ordere216010020id_add @ A )
=> ! [C: A,A2: A,B: A] :
( ( ord_less_eq @ A @ C @ ( zero_zero @ A ) )
=> ( ( ord_less_eq @ A @ A2 @ B )
=> ( ord_less_eq @ A @ ( plus_plus @ A @ A2 @ C ) @ B ) ) ) ) ).
% add_decreasing2
thf(fact_246_add__increasing2,axiom,
! [A: $tType] :
( ( ordere216010020id_add @ A )
=> ! [C: A,B: A,A2: A] :
( ( ord_less_eq @ A @ ( zero_zero @ A ) @ C )
=> ( ( ord_less_eq @ A @ B @ A2 )
=> ( ord_less_eq @ A @ B @ ( plus_plus @ A @ A2 @ C ) ) ) ) ) ).
% add_increasing2
thf(fact_247_add__nonneg__nonneg,axiom,
! [A: $tType] :
( ( ordere216010020id_add @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ ( zero_zero @ A ) @ A2 )
=> ( ( ord_less_eq @ A @ ( zero_zero @ A ) @ B )
=> ( ord_less_eq @ A @ ( zero_zero @ A ) @ ( plus_plus @ A @ A2 @ B ) ) ) ) ) ).
% add_nonneg_nonneg
thf(fact_248_add__nonpos__nonpos,axiom,
! [A: $tType] :
( ( ordere216010020id_add @ A )
=> ! [A2: A,B: A] :
( ( ord_less_eq @ A @ A2 @ ( zero_zero @ A ) )
=> ( ( ord_less_eq @ A @ B @ ( zero_zero @ A ) )
=> ( ord_less_eq @ A @ ( plus_plus @ A @ A2 @ B ) @ ( zero_zero @ A ) ) ) ) ) ).
% add_nonpos_nonpos
thf(fact_249_add__nonneg__eq__0__iff,axiom,
! [A: $tType] :
( ( ordere216010020id_add @ A )
=> ! [X: A,Y: A] :
( ( ord_less_eq @ A @ ( zero_zero @ A ) @ X )
=> ( ( ord_less_eq @ A @ ( zero_zero @ A ) @ Y )
=> ( ( ( plus_plus @ A @ X @ Y )
= ( zero_zero @ A ) )
= ( ( X
= ( zero_zero @ A ) )
& ( Y
= ( zero_zero @ A ) ) ) ) ) ) ) ).
% add_nonneg_eq_0_iff
thf(fact_250_add__nonpos__eq__0__iff,axiom,
! [A: $tType] :
( ( ordere216010020id_add @ A )
=> ! [X: A,Y: A] :
( ( ord_less_eq @ A @ X @ ( zero_zero @ A ) )
=> ( ( ord_less_eq @ A @ Y @ ( zero_zero @ A ) )
=> ( ( ( plus_plus @ A @ X @ Y )
= ( zero_zero @ A ) )
= ( ( X
= ( zero_zero @ A ) )
& ( Y
= ( zero_zero @ A ) ) ) ) ) ) ) ).
% add_nonpos_eq_0_iff
thf(fact_251_zero__le__one,axiom,
! [A: $tType] :
( ( linord1659791738miring @ A )
=> ( ord_less_eq @ A @ ( zero_zero @ A ) @ ( one_one @ A ) ) ) ).
% zero_le_one
thf(fact_252_not__one__le__zero,axiom,
! [A: $tType] :
( ( linord1659791738miring @ A )
=> ~ ( ord_less_eq @ A @ ( one_one @ A ) @ ( zero_zero @ A ) ) ) ).
% not_one_le_zero
thf(fact_253_le__iff__diff__le__0,axiom,
! [A: $tType] :
( ( ordered_ab_group_add @ A )
=> ( ( ord_less_eq @ A )
= ( ^ [A3: A,B2: A] : ( ord_less_eq @ A @ ( minus_minus @ A @ A3 @ B2 ) @ ( zero_zero @ A ) ) ) ) ) ).
% le_iff_diff_le_0
% Type constructors (61)
thf(tcon_fun___Orderings_Opreorder,axiom,
! [A7: $tType,A8: $tType] :
( ( preorder @ A8 )
=> ( preorder @ ( A7 > A8 ) ) ) ).
thf(tcon_fun___Orderings_Oorder,axiom,
! [A7: $tType,A8: $tType] :
( ( order @ A8 )
=> ( order @ ( A7 > A8 ) ) ) ).
thf(tcon_fun___Orderings_Oord,axiom,
! [A7: $tType,A8: $tType] :
( ( ord @ A8 )
=> ( ord @ ( A7 > A8 ) ) ) ).
thf(tcon_fun___Groups_Ominus,axiom,
! [A7: $tType,A8: $tType] :
( ( minus @ A8 )
=> ( minus @ ( A7 > A8 ) ) ) ).
thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__monoid__add__imp__le,axiom,
ordere516151231imp_le @ nat ).
thf(tcon_Nat_Onat___Groups_Oordered__cancel__comm__monoid__diff,axiom,
ordere623563068d_diff @ nat ).
thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__add__imp__le,axiom,
ordere236663937imp_le @ nat ).
thf(tcon_Nat_Onat___Groups_Ocanonically__ordered__monoid__add,axiom,
canoni770627133id_add @ nat ).
thf(tcon_Nat_Onat___Rings_Olinordered__nonzero__semiring,axiom,
linord1659791738miring @ nat ).
thf(tcon_Nat_Onat___Groups_Oordered__ab__semigroup__add,axiom,
ordere779506340up_add @ nat ).
thf(tcon_Nat_Onat___Groups_Oordered__comm__monoid__add,axiom,
ordere216010020id_add @ nat ).
thf(tcon_Nat_Onat___Groups_Ocancel__ab__semigroup__add,axiom,
cancel146912293up_add @ nat ).
thf(tcon_Nat_Onat___Groups_Ocancel__comm__monoid__add,axiom,
cancel1352612707id_add @ nat ).
thf(tcon_Nat_Onat___Groups_Ocancel__semigroup__add,axiom,
cancel_semigroup_add @ nat ).
thf(tcon_Nat_Onat___Rings_Olinordered__semidom,axiom,
linordered_semidom @ nat ).
thf(tcon_Nat_Onat___Groups_Ocomm__monoid__diff,axiom,
comm_monoid_diff @ nat ).
thf(tcon_Nat_Onat___Groups_Oab__semigroup__add,axiom,
ab_semigroup_add @ nat ).
thf(tcon_Nat_Onat___Groups_Ocomm__monoid__add,axiom,
comm_monoid_add @ nat ).
thf(tcon_Nat_Onat___Groups_Osemigroup__add,axiom,
semigroup_add @ nat ).
thf(tcon_Nat_Onat___Rings_Ozero__neq__one,axiom,
zero_neq_one @ nat ).
thf(tcon_Nat_Onat___Orderings_Opreorder_1,axiom,
preorder @ nat ).
thf(tcon_Nat_Onat___Orderings_Olinorder,axiom,
linorder @ nat ).
thf(tcon_Nat_Onat___Groups_Omonoid__add,axiom,
monoid_add @ nat ).
thf(tcon_Nat_Onat___Orderings_Oorder_2,axiom,
order @ nat ).
thf(tcon_Nat_Onat___Orderings_Oord_3,axiom,
ord @ nat ).
thf(tcon_Nat_Onat___Groups_Ominus_4,axiom,
minus @ nat ).
thf(tcon_Nat_Onat___Groups_Ozero,axiom,
zero @ nat ).
thf(tcon_Nat_Onat___Groups_Oone,axiom,
one @ nat ).
thf(tcon_HOL_Obool___Orderings_Opreorder_5,axiom,
preorder @ $o ).
thf(tcon_HOL_Obool___Orderings_Olinorder_6,axiom,
linorder @ $o ).
thf(tcon_HOL_Obool___Orderings_Oorder_7,axiom,
order @ $o ).
thf(tcon_HOL_Obool___Orderings_Oord_8,axiom,
ord @ $o ).
thf(tcon_HOL_Obool___Groups_Ominus_9,axiom,
minus @ $o ).
thf(tcon_Real_Oreal___Groups_Oordered__ab__semigroup__monoid__add__imp__le_10,axiom,
ordere516151231imp_le @ real ).
thf(tcon_Real_Oreal___Groups_Oordered__ab__semigroup__add__imp__le_11,axiom,
ordere236663937imp_le @ real ).
thf(tcon_Real_Oreal___Rings_Olinordered__nonzero__semiring_12,axiom,
linord1659791738miring @ real ).
thf(tcon_Real_Oreal___Groups_Oordered__ab__semigroup__add_13,axiom,
ordere779506340up_add @ real ).
thf(tcon_Real_Oreal___Groups_Oordered__ab__group__add__abs,axiom,
ordere142940540dd_abs @ real ).
thf(tcon_Real_Oreal___Groups_Oordered__comm__monoid__add_14,axiom,
ordere216010020id_add @ real ).
thf(tcon_Real_Oreal___Groups_Olinordered__ab__group__add,axiom,
linord219039673up_add @ real ).
thf(tcon_Real_Oreal___Groups_Ocancel__ab__semigroup__add_15,axiom,
cancel146912293up_add @ real ).
thf(tcon_Real_Oreal___Groups_Ocancel__comm__monoid__add_16,axiom,
cancel1352612707id_add @ real ).
thf(tcon_Real_Oreal___Groups_Oordered__ab__group__add,axiom,
ordered_ab_group_add @ real ).
thf(tcon_Real_Oreal___Groups_Ocancel__semigroup__add_17,axiom,
cancel_semigroup_add @ real ).
thf(tcon_Real_Oreal___Rings_Olinordered__semidom_18,axiom,
linordered_semidom @ real ).
thf(tcon_Real_Oreal___Groups_Oab__semigroup__add_19,axiom,
ab_semigroup_add @ real ).
thf(tcon_Real_Oreal___Groups_Ocomm__monoid__add_20,axiom,
comm_monoid_add @ real ).
thf(tcon_Real_Oreal___Rings_Olinordered__idom,axiom,
linordered_idom @ real ).
thf(tcon_Real_Oreal___Groups_Osemigroup__add_21,axiom,
semigroup_add @ real ).
thf(tcon_Real_Oreal___Groups_Oab__group__add,axiom,
ab_group_add @ real ).
thf(tcon_Real_Oreal___Rings_Ozero__neq__one_22,axiom,
zero_neq_one @ real ).
thf(tcon_Real_Oreal___Rings_Oidom__abs__sgn,axiom,
idom_abs_sgn @ real ).
thf(tcon_Real_Oreal___Orderings_Opreorder_23,axiom,
preorder @ real ).
thf(tcon_Real_Oreal___Orderings_Olinorder_24,axiom,
linorder @ real ).
thf(tcon_Real_Oreal___Groups_Omonoid__add_25,axiom,
monoid_add @ real ).
thf(tcon_Real_Oreal___Groups_Ogroup__add,axiom,
group_add @ real ).
thf(tcon_Real_Oreal___Orderings_Oorder_26,axiom,
order @ real ).
thf(tcon_Real_Oreal___Orderings_Oord_27,axiom,
ord @ real ).
thf(tcon_Real_Oreal___Groups_Ominus_28,axiom,
minus @ real ).
thf(tcon_Real_Oreal___Groups_Ozero_29,axiom,
zero @ real ).
thf(tcon_Real_Oreal___Groups_Oone_30,axiom,
one @ real ).
% Helper facts (3)
thf(help_If_3_1_T,axiom,
! [P3: $o] :
( ( P3 = $true )
| ( P3 = $false ) ) ).
thf(help_If_2_1_T,axiom,
! [A: $tType,X: A,Y: A] :
( ( if @ A @ $false @ X @ Y )
= Y ) ).
thf(help_If_1_1_T,axiom,
! [A: $tType,X: A,Y: A] :
( ( if @ A @ $true @ X @ Y )
= X ) ).
% Conjectures (1)
thf(conj_0,conjecture,
genClo1015804716orrect @ m @ ( ord_max @ real @ ( genClo1163638703lle_te @ l @ i ) @ ( genClo1163638703lle_te @ m @ i ) ) ).
%------------------------------------------------------------------------------