Search for blocks/addresses/...
Proofgold Asset
asset id
618d579b833985ae7e0e498bd4cc8d3f9c7cd21cb986268fc0461fbbd675216d
asset hash
c48e38958b762e9b51d024be5c7998d6160d18647d04058be27a2e45c81eabfc
bday / block
28463
tx
2ea7a..
preasset
doc published by
PrQUS..
Param
SNo
SNo
:
ι
→
ο
Param
nIn
nIn
:
ι
→
ι
→
ο
Param
Sing
Sing
:
ι
→
ι
Param
ordsucc
ordsucc
:
ι
→
ι
Known
complex_tag_fresh
complex_tag_fresh
:
∀ x0 .
SNo
x0
⟶
∀ x1 .
x1
∈
x0
⟶
nIn
(
Sing
2
)
x1
Param
pair_tag
pair_tag
:
ι
→
ι
→
ι
→
ι
Definition
SNo_pair
SNo_pair
:=
pair_tag
(
Sing
2
)
Known
SNo_pair_0
SNo_pair_0
:
∀ x0 .
SNo_pair
x0
0
=
x0
Known
SNo_pair_prop_1
SNo_pair_prop_1
:
∀ x0 x1 x2 x3 .
SNo
x0
⟶
SNo
x2
⟶
SNo_pair
x0
x1
=
SNo_pair
x2
x3
⟶
x0
=
x2
Known
SNo_pair_prop_2
SNo_pair_prop_2
:
∀ x0 x1 x2 x3 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNo
x3
⟶
SNo_pair
x0
x1
=
SNo_pair
x2
x3
⟶
x1
=
x3
Param
CD_carr
CD_carr
:
ι
→
(
ι
→
ο
) →
ι
→
ο
Definition
CSNo
CSNo
:=
CD_carr
(
Sing
2
)
SNo
Known
CSNo_I
CSNo_I
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
CSNo
(
SNo_pair
x0
x1
)
Known
CSNo_E
CSNo_E
:
∀ x0 .
CSNo
x0
⟶
∀ x1 :
ι → ο
.
(
∀ x2 x3 .
SNo
x2
⟶
SNo
x3
⟶
x0
=
SNo_pair
x2
x3
⟶
x1
(
SNo_pair
x2
x3
)
)
⟶
x1
x0
Known
SNo_CSNo
SNo_CSNo
:
∀ x0 .
SNo
x0
⟶
CSNo
x0
Known
CSNo_0
CSNo_0
:
CSNo
0
Known
CSNo_1
CSNo_1
:
CSNo
1
Param
ExtendedSNoElt_
ExtendedSNoElt_
:
ι
→
ι
→
ο
Known
CSNo_ExtendedSNoElt_3
CSNo_ExtendedSNoElt_3
:
∀ x0 .
CSNo
x0
⟶
ExtendedSNoElt_
3
x0
Definition
Complex_i
Complex_i
:=
SNo_pair
0
1
Param
CD_proj0
CD_proj0
:
ι
→
(
ι
→
ο
) →
ι
→
ι
Definition
CSNo_Re
CSNo_Re
:=
CD_proj0
(
Sing
2
)
SNo
Param
CD_proj1
CD_proj1
:
ι
→
(
ι
→
ο
) →
ι
→
ι
Definition
CSNo_Im
CSNo_Im
:=
CD_proj1
(
Sing
2
)
SNo
Known
CSNo_Re2
CSNo_Re2
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
CSNo_Re
(
SNo_pair
x0
x1
)
=
x0
Known
CSNo_Im2
CSNo_Im2
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
CSNo_Im
(
SNo_pair
x0
x1
)
=
x1
Known
CSNo_ReR
CSNo_ReR
:
∀ x0 .
CSNo
x0
⟶
SNo
(
CSNo_Re
x0
)
Known
CSNo_ImR
CSNo_ImR
:
∀ x0 .
CSNo
x0
⟶
SNo
(
CSNo_Im
x0
)
Known
CSNo_ReIm_split
CSNo_ReIm_split
:
∀ x0 x1 .
CSNo
x0
⟶
CSNo
x1
⟶
CSNo_Re
x0
=
CSNo_Re
x1
⟶
CSNo_Im
x0
=
CSNo_Im
x1
⟶
x0
=
x1
Definition
CD_minus
CD_minus
:=
λ x0 .
λ x1 :
ι → ο
.
λ x2 :
ι → ι
.
λ x3 .
pair_tag
x0
(
x2
(
CD_proj0
x0
x1
x3
)
)
(
x2
(
CD_proj1
x0
x1
x3
)
)
Param
minus_SNo
minus_SNo
:
ι
→
ι
Definition
minus_CSNo
minus_CSNo
:=
CD_minus
(
Sing
2
)
SNo
minus_SNo
Param
CD_conj
CD_conj
:
ι
→
(
ι
→
ο
) →
(
ι
→
ι
) →
(
ι
→
ι
) →
ι
→
ι
Definition
conj_CSNo
conj_CSNo
:=
CD_conj
(
Sing
2
)
SNo
minus_SNo
(
λ x0 .
x0
)
Definition
CD_add
CD_add
:=
λ x0 .
λ x1 :
ι → ο
.
λ x2 :
ι →
ι → ι
.
λ x3 x4 .
pair_tag
x0
(
x2
(
CD_proj0
x0
x1
x3
)
(
CD_proj0
x0
x1
x4
)
)
(
x2
(
CD_proj1
x0
x1
x3
)
(
CD_proj1
x0
x1
x4
)
)
Param
add_SNo
add_SNo
:
ι
→
ι
→
ι
Definition
add_CSNo
add_CSNo
:=
CD_add
(
Sing
2
)
SNo
add_SNo
Definition
CD_mul
CD_mul
:=
λ x0 .
λ x1 :
ι → ο
.
λ x2 x3 :
ι → ι
.
λ x4 x5 :
ι →
ι → ι
.
λ x6 x7 .
pair_tag
x0
(
x4
(
x5
(
CD_proj0
x0
x1
x6
)
(
CD_proj0
x0
x1
x7
)
)
(
x2
(
x5
(
x3
(
CD_proj1
x0
x1
x7
)
)
(
CD_proj1
x0
x1
x6
)
)
)
)
(
x4
(
x5
(
CD_proj1
x0
x1
x7
)
(
CD_proj0
x0
x1
x6
)
)
(
x5
(
CD_proj1
x0
x1
x6
)
(
x3
(
CD_proj0
x0
x1
x7
)
)
)
)
Param
mul_SNo
mul_SNo
:
ι
→
ι
→
ι
Definition
mul_CSNo
mul_CSNo
:=
CD_mul
(
Sing
2
)
SNo
minus_SNo
(
λ x0 .
x0
)
add_SNo
mul_SNo
Param
CD_exp_nat
CD_exp_nat
:
ι
→
(
ι
→
ο
) →
(
ι
→
ι
) →
(
ι
→
ι
) →
(
ι
→
ι
→
ι
) →
(
ι
→
ι
→
ι
) →
ι
→
ι
→
ι
Definition
exp_CSNo_nat
exp_CSNo_nat
:=
CD_exp_nat
(
Sing
2
)
SNo
minus_SNo
(
λ x0 .
x0
)
add_SNo
mul_SNo
Param
exp_SNo_nat
exp_SNo_nat
:
ι
→
ι
→
ι
Definition
abs_sqr_CSNo
abs_sqr_CSNo
:=
λ x0 .
add_SNo
(
exp_SNo_nat
(
CSNo_Re
x0
)
2
)
(
exp_SNo_nat
(
CSNo_Im
x0
)
2
)
Param
recip_SNo
recip_SNo
:
ι
→
ι
Definition
div_SNo
div_SNo
:=
λ x0 x1 .
mul_SNo
x0
(
recip_SNo
x1
)
Definition
recip_CSNo
recip_CSNo
:=
λ x0 .
SNo_pair
(
div_SNo
(
CSNo_Re
x0
)
(
abs_sqr_CSNo
x0
)
)
(
minus_SNo
(
div_SNo
(
CSNo_Im
x0
)
(
abs_sqr_CSNo
x0
)
)
)
Definition
div_CSNo
div_CSNo
:=
λ x0 x1 .
mul_CSNo
x0
(
recip_CSNo
x1
)
Known
CSNo_Complex_i
CSNo_Complex_i
:
CSNo
Complex_i
Known
CSNo_minus_CSNo
CSNo_minus_CSNo
:
∀ x0 .
CSNo
x0
⟶
CSNo
(
minus_CSNo
x0
)
Known
minus_CSNo_CRe
minus_CSNo_CRe
:
∀ x0 .
CSNo
x0
⟶
CSNo_Re
(
minus_CSNo
x0
)
=
minus_SNo
(
CSNo_Re
x0
)
Known
minus_CSNo_CIm
minus_CSNo_CIm
:
∀ x0 .
CSNo
x0
⟶
CSNo_Im
(
minus_CSNo
x0
)
=
minus_SNo
(
CSNo_Im
x0
)
Known
CSNo_add_CSNo
CSNo_add_CSNo
:
∀ x0 x1 .
CSNo
x0
⟶
CSNo
x1
⟶
CSNo
(
add_CSNo
x0
x1
)
Known
add_CSNo_CRe
add_CSNo_CRe
:
∀ x0 x1 .
CSNo
x0
⟶
CSNo
x1
⟶
CSNo_Re
(
add_CSNo
x0
x1
)
=
add_SNo
(
CSNo_Re
x0
)
(
CSNo_Re
x1
)
Known
add_CSNo_CIm
add_CSNo_CIm
:
∀ x0 x1 .
CSNo
x0
⟶
CSNo
x1
⟶
CSNo_Im
(
add_CSNo
x0
x1
)
=
add_SNo
(
CSNo_Im
x0
)
(
CSNo_Im
x1
)
Known
CSNo_mul_CSNo
CSNo_mul_CSNo
:
∀ x0 x1 .
CSNo
x0
⟶
CSNo
x1
⟶
CSNo
(
mul_CSNo
x0
x1
)
Known
mul_CSNo_CRe
mul_CSNo_CRe
:
∀ x0 x1 .
CSNo
x0
⟶
CSNo
x1
⟶
CSNo_Re
(
mul_CSNo
x0
x1
)
=
add_SNo
(
mul_SNo
(
CSNo_Re
x0
)
(
CSNo_Re
x1
)
)
(
minus_SNo
(
mul_SNo
(
CSNo_Im
x1
)
(
CSNo_Im
x0
)
)
)
Known
mul_CSNo_CIm
mul_CSNo_CIm
:
∀ x0 x1 .
CSNo
x0
⟶
CSNo
x1
⟶
CSNo_Im
(
mul_CSNo
x0
x1
)
=
add_SNo
(
mul_SNo
(
CSNo_Im
x1
)
(
CSNo_Re
x0
)
)
(
mul_SNo
(
CSNo_Im
x0
)
(
CSNo_Re
x1
)
)
Known
SNo_Re
SNo_Re
:
∀ x0 .
SNo
x0
⟶
CSNo_Re
x0
=
x0
Known
SNo_Im
SNo_Im
:
∀ x0 .
SNo
x0
⟶
CSNo_Im
x0
=
0
Known
Re_0
Re_0
:
CSNo_Re
0
=
0
Known
Im_0
Im_0
:
CSNo_Im
0
=
0
Known
Re_1
Re_1
:
CSNo_Re
1
=
1
Known
Im_1
Im_1
:
CSNo_Im
1
=
0
Known
Re_i
Re_i
:
CSNo_Re
Complex_i
=
0
Known
Im_i
Im_i
:
CSNo_Im
Complex_i
=
1
Known
mul_CSNo_mul_SNo
mul_CSNo_mul_SNo
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
mul_CSNo
x0
x1
=
mul_SNo
x0
x1
Known
mul_CSNo_1R
mul_CSNo_1R
:
∀ x0 .
CSNo
x0
⟶
mul_CSNo
x0
1
=
x0
Known
exp_CSNo_nat_2
exp_CSNo_nat_2
:
∀ x0 .
CSNo
x0
⟶
exp_CSNo_nat
x0
2
=
mul_CSNo
x0
x0
Param
nat_p
nat_p
:
ι
→
ο
Known
CSNo_exp_CSNo_nat
CSNo_exp_CSNo_nat
:
∀ x0 .
CSNo
x0
⟶
∀ x1 .
nat_p
x1
⟶
CSNo
(
exp_CSNo_nat
x0
x1
)
Known
mul_CSNo_com
mul_CSNo_com
:
∀ x0 x1 .
CSNo
x0
⟶
CSNo
x1
⟶
mul_CSNo
x0
x1
=
mul_CSNo
x1
x0
Known
mul_CSNo_assoc
mul_CSNo_assoc
:
∀ x0 x1 x2 .
CSNo
x0
⟶
CSNo
x1
⟶
CSNo
x2
⟶
mul_CSNo
x0
(
mul_CSNo
x1
x2
)
=
mul_CSNo
(
mul_CSNo
x0
x1
)
x2
Known
SNo_add_SNo
SNo_add_SNo
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
SNo
(
add_SNo
x0
x1
)
Known
SNo_exp_SNo_nat
SNo_exp_SNo_nat
:
∀ x0 .
SNo
x0
⟶
∀ x1 .
nat_p
x1
⟶
SNo
(
exp_SNo_nat
x0
x1
)
Known
nat_2
nat_2
:
nat_p
2
Theorem
SNo_abs_sqr_CSNo
SNo_abs_sqr_CSNo
:
∀ x0 .
CSNo
x0
⟶
SNo
(
abs_sqr_CSNo
x0
)
(proof)
Param
SNoLe
SNoLe
:
ι
→
ι
→
ο
Known
add_SNo_0L
add_SNo_0L
:
∀ x0 .
SNo
x0
⟶
add_SNo
0
x0
=
x0
Known
SNo_0
SNo_0
:
SNo
0
Known
add_SNo_Le3
add_SNo_Le3
:
∀ x0 x1 x2 x3 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNo
x3
⟶
SNoLe
x0
x2
⟶
SNoLe
x1
x3
⟶
SNoLe
(
add_SNo
x0
x1
)
(
add_SNo
x2
x3
)
Known
exp_SNo_nat_2
exp_SNo_nat_2
:
∀ x0 .
SNo
x0
⟶
exp_SNo_nat
x0
2
=
mul_SNo
x0
x0
Known
SNo_sqr_nonneg
SNo_sqr_nonneg
:
∀ x0 .
SNo
x0
⟶
SNoLe
0
(
mul_SNo
x0
x0
)
Theorem
abs_sqr_CSNo_nonneg
abs_sqr_CSNo_nonneg
:
∀ x0 .
CSNo
x0
⟶
SNoLe
0
(
abs_sqr_CSNo
x0
)
(proof)
Definition
or
or
:=
λ x0 x1 : ο .
∀ x2 : ο .
(
x0
⟶
x2
)
⟶
(
x1
⟶
x2
)
⟶
x2
Param
SNoLt
SNoLt
:
ι
→
ι
→
ο
Known
SNo_zero_or_sqr_pos'
SNo_zero_or_sqr_pos
:
∀ x0 .
SNo
x0
⟶
or
(
x0
=
0
)
(
SNoLt
0
(
exp_SNo_nat
x0
2
)
)
Definition
False
False
:=
∀ x0 : ο .
x0
Known
FalseE
FalseE
:
False
⟶
∀ x0 : ο .
x0
Definition
not
not
:=
λ x0 : ο .
x0
⟶
False
Known
SNoLt_irref
SNoLt_irref
:
∀ x0 .
not
(
SNoLt
x0
x0
)
Known
SNoLtLe_tra
SNoLtLe_tra
:
∀ x0 x1 x2 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNoLt
x0
x1
⟶
SNoLe
x1
x2
⟶
SNoLt
x0
x2
Known
add_SNo_0R
add_SNo_0R
:
∀ x0 .
SNo
x0
⟶
add_SNo
x0
0
=
x0
Known
add_SNo_Le2
add_SNo_Le2
:
∀ x0 x1 x2 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNoLe
x1
x2
⟶
SNoLe
(
add_SNo
x0
x1
)
(
add_SNo
x0
x2
)
Known
SNo_sqr_nonneg'
SNo_sqr_nonneg
:
∀ x0 .
SNo
x0
⟶
SNoLe
0
(
exp_SNo_nat
x0
2
)
Known
add_SNo_Le1
add_SNo_Le1
:
∀ x0 x1 x2 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNoLe
x0
x2
⟶
SNoLe
(
add_SNo
x0
x1
)
(
add_SNo
x2
x1
)
Theorem
abs_sqr_CSNo_zero
abs_sqr_CSNo_zero
:
∀ x0 .
CSNo
x0
⟶
abs_sqr_CSNo
x0
=
0
⟶
x0
=
0
(proof)
Known
SNo_div_SNo
SNo_div_SNo
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
SNo
(
div_SNo
x0
x1
)
Known
SNo_minus_SNo
SNo_minus_SNo
:
∀ x0 .
SNo
x0
⟶
SNo
(
minus_SNo
x0
)
Theorem
CSNo_recip_CSNo
CSNo_recip_CSNo
:
∀ x0 .
CSNo
x0
⟶
CSNo
(
recip_CSNo
x0
)
(proof)
Known
mul_SNo_zeroR
mul_SNo_zeroR
:
∀ x0 .
SNo
x0
⟶
mul_SNo
x0
0
=
0
Known
mul_SNo_zeroL
mul_SNo_zeroL
:
∀ x0 .
SNo
x0
⟶
mul_SNo
0
x0
=
0
Known
SNo_1
SNo_1
:
SNo
1
Known
minus_SNo_0
minus_SNo_0
:
minus_SNo
0
=
0
Known
mul_SNo_oneL
mul_SNo_oneL
:
∀ x0 .
SNo
x0
⟶
mul_SNo
1
x0
=
x0
Known
mul_SNo_minus_distrL
mul_SNo_minus_distrL
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
mul_SNo
(
minus_SNo
x0
)
x1
=
minus_SNo
(
mul_SNo
x0
x1
)
Known
minus_SNo_invol
minus_SNo_invol
:
∀ x0 .
SNo
x0
⟶
minus_SNo
(
minus_SNo
x0
)
=
x0
Known
mul_SNo_com_3_0_1
mul_SNo_com_3_0_1
:
∀ x0 x1 x2 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
mul_SNo
x0
(
mul_SNo
x1
x2
)
=
mul_SNo
x1
(
mul_SNo
x0
x2
)
Known
mul_SNo_assoc
mul_SNo_assoc
:
∀ x0 x1 x2 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
mul_SNo
x0
(
mul_SNo
x1
x2
)
=
mul_SNo
(
mul_SNo
x0
x1
)
x2
Known
mul_SNo_com
mul_SNo_com
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
mul_SNo
x0
x1
=
mul_SNo
x1
x0
Known
mul_SNo_distrR
mul_SNo_distrR
:
∀ x0 x1 x2 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
mul_SNo
(
add_SNo
x0
x1
)
x2
=
add_SNo
(
mul_SNo
x0
x2
)
(
mul_SNo
x1
x2
)
Known
add_SNo_minus_SNo_linv
add_SNo_minus_SNo_linv
:
∀ x0 .
SNo
x0
⟶
add_SNo
(
minus_SNo
x0
)
x0
=
0
Known
SNo_mul_SNo_3
SNo_mul_SNo_3
:
∀ x0 x1 x2 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNo
(
mul_SNo
x0
(
mul_SNo
x1
x2
)
)
Known
SNo_mul_SNo
SNo_mul_SNo
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
SNo
(
mul_SNo
x0
x1
)
Theorem
CSNo_relative_recip
CSNo_relative_recip
:
∀ x0 .
CSNo
x0
⟶
∀ x1 .
SNo
x1
⟶
mul_SNo
(
add_SNo
(
exp_SNo_nat
(
CSNo_Re
x0
)
2
)
(
exp_SNo_nat
(
CSNo_Im
x0
)
2
)
)
x1
=
1
⟶
mul_CSNo
x0
(
add_CSNo
(
mul_CSNo
x1
(
CSNo_Re
x0
)
)
(
minus_CSNo
(
mul_CSNo
Complex_i
(
mul_CSNo
x1
(
CSNo_Im
x0
)
)
)
)
)
=
1
(proof)
Known
recip_SNo_invR
recip_SNo_invR
:
∀ x0 .
SNo
x0
⟶
(
x0
=
0
⟶
∀ x1 : ο .
x1
)
⟶
mul_SNo
x0
(
recip_SNo
x0
)
=
1
Known
mul_SNo_oneR
mul_SNo_oneR
:
∀ x0 .
SNo
x0
⟶
mul_SNo
x0
1
=
x0
Known
SNo_recip_SNo
SNo_recip_SNo
:
∀ x0 .
SNo
x0
⟶
SNo
(
recip_SNo
x0
)
Theorem
recip_CSNo_invR
recip_CSNo_invR
:
∀ x0 .
CSNo
x0
⟶
(
x0
=
0
⟶
∀ x1 : ο .
x1
)
⟶
mul_CSNo
x0
(
recip_CSNo
x0
)
=
1
(proof)
Theorem
recip_CSNo_invL
recip_CSNo_invL
:
∀ x0 .
CSNo
x0
⟶
(
x0
=
0
⟶
∀ x1 : ο .
x1
)
⟶
mul_CSNo
(
recip_CSNo
x0
)
x0
=
1
(proof)
Theorem
CSNo_div_CSNo
CSNo_div_CSNo
:
∀ x0 x1 .
CSNo
x0
⟶
CSNo
x1
⟶
CSNo
(
div_CSNo
x0
x1
)
(proof)
Theorem
mul_div_CSNo_invL
mul_div_CSNo_invL
:
∀ x0 x1 .
CSNo
x0
⟶
CSNo
x1
⟶
(
x1
=
0
⟶
∀ x2 : ο .
x2
)
⟶
mul_CSNo
(
div_CSNo
x0
x1
)
x1
=
x0
(proof)
Theorem
mul_div_CSNo_invR
mul_div_CSNo_invR
:
∀ x0 x1 .
CSNo
x0
⟶
CSNo
x1
⟶
(
x1
=
0
⟶
∀ x2 : ο .
x2
)
⟶
mul_CSNo
x1
(
div_CSNo
x0
x1
)
=
x0
(proof)
Param
sqrt_SNo_nonneg
sqrt_SNo_nonneg
:
ι
→
ι
Known
SNoLeE
SNoLeE
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
SNoLe
x0
x1
⟶
or
(
SNoLt
x0
x1
)
(
x0
=
x1
)
Known
SNoLt_trichotomy_or_impred
SNoLt_trichotomy_or_impred
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
∀ x2 : ο .
(
SNoLt
x0
x1
⟶
x2
)
⟶
(
x0
=
x1
⟶
x2
)
⟶
(
SNoLt
x1
x0
⟶
x2
)
⟶
x2
Known
pos_mul_SNo_Lt2
pos_mul_SNo_Lt2
:
∀ x0 x1 x2 x3 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNo
x3
⟶
SNoLt
0
x0
⟶
SNoLt
0
x1
⟶
SNoLt
x0
x2
⟶
SNoLt
x1
x3
⟶
SNoLt
(
mul_SNo
x0
x1
)
(
mul_SNo
x2
x3
)
Known
mul_SNo_pos_pos
mul_SNo_pos_pos
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
SNoLt
0
x0
⟶
SNoLt
0
x1
⟶
SNoLt
0
(
mul_SNo
x0
x1
)
Known
sqrt_SNo_nonneg_0
sqrt_SNo_nonneg_0
:
sqrt_SNo_nonneg
0
=
0
Known
sqrt_SNo_nonneg_sqr
sqrt_SNo_nonneg_sqr
:
∀ x0 .
SNo
x0
⟶
SNoLe
0
x0
⟶
mul_SNo
(
sqrt_SNo_nonneg
x0
)
(
sqrt_SNo_nonneg
x0
)
=
x0
Known
sqrt_SNo_nonneg_nonneg
sqrt_SNo_nonneg_nonneg
:
∀ x0 .
SNo
x0
⟶
SNoLe
0
x0
⟶
SNoLe
0
(
sqrt_SNo_nonneg
x0
)
Known
SNo_sqrt_SNo_nonneg
SNo_sqrt_SNo_nonneg
:
∀ x0 .
SNo
x0
⟶
SNoLe
0
x0
⟶
SNo
(
sqrt_SNo_nonneg
x0
)
Theorem
sqrt_SNo_nonneg_sqr_id
sqrt_SNo_nonneg_sqr_id
:
∀ x0 .
SNo
x0
⟶
SNoLe
0
x0
⟶
sqrt_SNo_nonneg
(
exp_SNo_nat
x0
2
)
=
x0
(proof)
Known
SNoLtLe_or
SNoLtLe_or
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
or
(
SNoLt
x0
x1
)
(
SNoLe
x1
x0
)
Known
nonneg_mul_SNo_Le2
nonneg_mul_SNo_Le2
:
∀ x0 x1 x2 x3 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNo
x3
⟶
SNoLe
0
x0
⟶
SNoLe
0
x1
⟶
SNoLe
x0
x2
⟶
SNoLe
x1
x3
⟶
SNoLe
(
mul_SNo
x0
x1
)
(
mul_SNo
x2
x3
)
Known
SNoLe_tra
SNoLe_tra
:
∀ x0 x1 x2 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNoLe
x0
x1
⟶
SNoLe
x1
x2
⟶
SNoLe
x0
x2
Known
SNoLtLe
SNoLtLe
:
∀ x0 x1 .
SNoLt
x0
x1
⟶
SNoLe
x0
x1
Theorem
sqrt_SNo_nonneg_mon_strict
sqrt_SNo_nonneg_mon_strict
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
SNoLe
0
x0
⟶
SNoLt
x0
x1
⟶
SNoLt
(
sqrt_SNo_nonneg
x0
)
(
sqrt_SNo_nonneg
x1
)
(proof)
Known
SNoLe_ref
SNoLe_ref
:
∀ x0 .
SNoLe
x0
x0
Theorem
sqrt_SNo_nonneg_mon
sqrt_SNo_nonneg_mon
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
SNoLe
0
x0
⟶
SNoLe
x0
x1
⟶
SNoLe
(
sqrt_SNo_nonneg
x0
)
(
sqrt_SNo_nonneg
x1
)
(proof)
Known
mul_SNo_nonneg_nonneg
mul_SNo_nonneg_nonneg
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
SNoLe
0
x0
⟶
SNoLe
0
x1
⟶
SNoLe
0
(
mul_SNo
x0
x1
)
Known
mul_SNo_com_4_inner_mid
mul_SNo_com_4_inner_mid
:
∀ x0 x1 x2 x3 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNo
x3
⟶
mul_SNo
(
mul_SNo
x0
x1
)
(
mul_SNo
x2
x3
)
=
mul_SNo
(
mul_SNo
x0
x2
)
(
mul_SNo
x1
x3
)
Theorem
sqrt_SNo_nonneg_mul_SNo
sqrt_SNo_nonneg_mul_SNo
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
SNoLe
0
x0
⟶
SNoLe
0
x1
⟶
sqrt_SNo_nonneg
(
mul_SNo
x0
x1
)
=
mul_SNo
(
sqrt_SNo_nonneg
x0
)
(
sqrt_SNo_nonneg
x1
)
(proof)
Definition
modulus_CSNo
modulus_CSNo
:=
λ x0 .
sqrt_SNo_nonneg
(
abs_sqr_CSNo
x0
)
Theorem
SNo_modulus_CSNo
SNo_modulus_CSNo
:
∀ x0 .
CSNo
x0
⟶
SNo
(
modulus_CSNo
x0
)
(proof)
Theorem
modulus_CSNo_nonneg
modulus_CSNo_nonneg
:
∀ x0 .
CSNo
x0
⟶
SNoLe
0
(
modulus_CSNo
x0
)
(proof)
Param
If_i
If_i
:
ο
→
ι
→
ι
→
ι
Definition
and
and
:=
λ x0 x1 : ο .
∀ x2 : ο .
(
x0
⟶
x1
⟶
x2
)
⟶
x2
Param
eps_
eps_
:
ι
→
ι
Definition
sqrt_CSNo
sqrt_CSNo
:=
λ x0 .
If_i
(
or
(
SNoLt
(
CSNo_Im
x0
)
0
)
(
and
(
CSNo_Im
x0
=
0
)
(
SNoLt
(
CSNo_Re
x0
)
0
)
)
)
(
SNo_pair
(
sqrt_SNo_nonneg
(
mul_SNo
(
eps_
1
)
(
add_SNo
(
CSNo_Re
x0
)
(
modulus_CSNo
x0
)
)
)
)
(
minus_SNo
(
sqrt_SNo_nonneg
(
mul_SNo
(
eps_
1
)
(
add_SNo
(
minus_SNo
(
CSNo_Re
x0
)
)
(
modulus_CSNo
x0
)
)
)
)
)
)
(
SNo_pair
(
sqrt_SNo_nonneg
(
mul_SNo
(
eps_
1
)
(
add_SNo
(
CSNo_Re
x0
)
(
modulus_CSNo
x0
)
)
)
)
(
sqrt_SNo_nonneg
(
mul_SNo
(
eps_
1
)
(
add_SNo
(
minus_SNo
(
CSNo_Re
x0
)
)
(
modulus_CSNo
x0
)
)
)
)
)
Known
If_i_1
If_i_1
:
∀ x0 : ο .
∀ x1 x2 .
x0
⟶
If_i
x0
x1
x2
=
x1
Known
mul_SNo_minus_minus
mul_SNo_minus_minus
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
mul_SNo
(
minus_SNo
x0
)
(
minus_SNo
x1
)
=
mul_SNo
x0
x1
Known
minus_add_SNo_distr
minus_add_SNo_distr
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
minus_SNo
(
add_SNo
x0
x1
)
=
add_SNo
(
minus_SNo
x0
)
(
minus_SNo
x1
)
Known
eps_1_half_eq1
eps_1_half_eq1
:
add_SNo
(
eps_
1
)
(
eps_
1
)
=
1
Known
minus_SNo_Lt_contra2
minus_SNo_Lt_contra2
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
SNoLt
x0
(
minus_SNo
x1
)
⟶
SNoLt
x1
(
minus_SNo
x0
)
Known
orIL
orIL
:
∀ x0 x1 : ο .
x0
⟶
or
x0
x1
Known
orIR
orIR
:
∀ x0 x1 : ο .
x1
⟶
or
x0
x1
Known
andI
andI
:
∀ x0 x1 : ο .
x0
⟶
x1
⟶
and
x0
x1
Known
If_i_0
If_i_0
:
∀ x0 : ο .
∀ x1 x2 .
not
x0
⟶
If_i
x0
x1
x2
=
x2
Known
SNoLt_tra
SNoLt_tra
:
∀ x0 x1 x2 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNoLt
x0
x1
⟶
SNoLt
x1
x2
⟶
SNoLt
x0
x2
Known
mul_SNo_minus_distrR
mul_minus_SNo_distrR
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
mul_SNo
x0
(
minus_SNo
x1
)
=
minus_SNo
(
mul_SNo
x0
x1
)
Known
mul_SNo_distrL
mul_SNo_distrL
:
∀ x0 x1 x2 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
mul_SNo
x0
(
add_SNo
x1
x2
)
=
add_SNo
(
mul_SNo
x0
x1
)
(
mul_SNo
x0
x2
)
Known
add_SNo_com_4_inner_mid
add_SNo_com_4_inner_mid
:
∀ x0 x1 x2 x3 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNo
x3
⟶
add_SNo
(
add_SNo
x0
x1
)
(
add_SNo
x2
x3
)
=
add_SNo
(
add_SNo
x0
x2
)
(
add_SNo
x1
x3
)
Known
add_SNo_minus_SNo_rinv
add_SNo_minus_SNo_rinv
:
∀ x0 .
SNo
x0
⟶
add_SNo
x0
(
minus_SNo
x0
)
=
0
Known
SNo_foil
SNo_foil
:
∀ x0 x1 x2 x3 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNo
x3
⟶
mul_SNo
(
add_SNo
x0
x1
)
(
add_SNo
x2
x3
)
=
add_SNo
(
mul_SNo
x0
x2
)
(
add_SNo
(
mul_SNo
x0
x3
)
(
add_SNo
(
mul_SNo
x1
x2
)
(
mul_SNo
x1
x3
)
)
)
Known
add_SNo_minus_L2
add_SNo_minus_L2
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
add_SNo
(
minus_SNo
x0
)
(
add_SNo
x0
x1
)
=
x1
Known
add_SNo_com
add_SNo_com
:
∀ x0 x1 .
SNo
x0
⟶
SNo
x1
⟶
add_SNo
x0
x1
=
add_SNo
x1
x0
Known
add_SNo_minus_Le2b
add_SNo_minus_Le2b
:
∀ x0 x1 x2 .
SNo
x0
⟶
SNo
x1
⟶
SNo
x2
⟶
SNoLe
(
add_SNo
x2
x1
)
x0
⟶
SNoLe
x2
(
add_SNo
x0
(
minus_SNo
x1
)
)
Param
omega
omega
:
ι
Known
SNo_eps_pos
SNo_eps_pos
:
∀ x0 .
x0
∈
omega
⟶
SNoLt
0
(
eps_
x0
)
Known
nat_p_omega
nat_p_omega
:
∀ x0 .
nat_p
x0
⟶
x0
∈
omega
Known
nat_1
nat_1
:
nat_p
1
Known
SNo_eps_
SNo_eps_
:
∀ x0 .
x0
∈
omega
⟶
SNo
(
eps_
x0
)
Theorem
sqrt_CSNo_sqrt
sqrt_CSNo_sqrt
:
∀ x0 .
CSNo
x0
⟶
exp_CSNo_nat
(
sqrt_CSNo
x0
)
2
=
x0
(proof)
Param
lam
Sigma
:
ι
→
(
ι
→
ι
) →
ι
Definition
setprod
setprod
:=
λ x0 x1 .
lam
x0
(
λ x2 .
x1
)
Param
real
real
:
ι
Param
ap
ap
:
ι
→
ι
→
ι
Definition
complex
complex
:=
{
SNo_pair
(
ap
x0
0
)
(
ap
x0
1
)
|x0 ∈
setprod
real
real
}
Known
tuple_2_0_eq
tuple_2_0_eq
:
∀ x0 x1 .
ap
(
lam
2
(
λ x3 .
If_i
(
x3
=
0
)
x0
x1
)
)
0
=
x0
Known
tuple_2_1_eq
tuple_2_1_eq
:
∀ x0 x1 .
ap
(
lam
2
(
λ x3 .
If_i
(
x3
=
0
)
x0
x1
)
)
1
=
x1
Known
ReplI
ReplI
:
∀ x0 .
∀ x1 :
ι → ι
.
∀ x2 .
x2
∈
x0
⟶
x1
x2
∈
prim5
x0
x1
Known
tuple_2_setprod
tuple_2_setprod
:
∀ x0 x1 x2 .
x2
∈
x0
⟶
∀ x3 .
x3
∈
x1
⟶
lam
2
(
λ x4 .
If_i
(
x4
=
0
)
x2
x3
)
∈
setprod
x0
x1
Theorem
complex_I
complex_I
:
∀ x0 .
x0
∈
real
⟶
∀ x1 .
x1
∈
real
⟶
SNo_pair
x0
x1
∈
complex
(proof)
Known
ReplE_impred
ReplE_impred
:
∀ x0 .
∀ x1 :
ι → ι
.
∀ x2 .
x2
∈
prim5
x0
x1
⟶
∀ x3 : ο .
(
∀ x4 .
x4
∈
x0
⟶
x2
=
x1
x4
⟶
x3
)
⟶
x3
Known
ap0_Sigma
ap0_Sigma
:
∀ x0 .
∀ x1 :
ι → ι
.
∀ x2 .
x2
∈
lam
x0
x1
⟶
ap
x2
0
∈
x0
Known
ap1_Sigma
ap1_Sigma
:
∀ x0 .
∀ x1 :
ι → ι
.
∀ x2 .
x2
∈
lam
x0
x1
⟶
ap
x2
1
∈
x1
(
ap
x2
0
)
Theorem
complex_E
complex_E
:
∀ x0 .
x0
∈
complex
⟶
∀ x1 : ο .
(
∀ x2 .
x2
∈
real
⟶
∀ x3 .
x3
∈
real
⟶
x0
=
SNo_pair
x2
x3
⟶
x1
)
⟶
x1
(proof)
Known
real_SNo
real_SNo
:
∀ x0 .
x0
∈
real
⟶
SNo
x0
Theorem
complex_CSNo
complex_CSNo
:
∀ x0 .
x0
∈
complex
⟶
CSNo
x0
(proof)
Definition
Subq
Subq
:=
λ x0 x1 .
∀ x2 .
x2
∈
x0
⟶
x2
∈
x1
Known
real_0
real_0
:
0
∈
real
Theorem
real_complex
real_complex
:
real
⊆
complex
(proof)
Theorem
complex_0
complex_0
:
0
∈
complex
(proof)
Known
real_1
real_1
:
1
∈
real
Theorem
complex_1
complex_1
:
1
∈
complex
(proof)
Theorem
complex_i
complex_i
:
Complex_i
∈
complex
(proof)
Theorem
complex_Re_eq
complex_Re_eq
:
∀ x0 .
x0
∈
real
⟶
∀ x1 .
x1
∈
real
⟶
CSNo_Re
(
SNo_pair
x0
x1
)
=
x0
(proof)
Theorem
complex_Im_eq
complex_Im_eq
:
∀ x0 .
x0
∈
real
⟶
∀ x1 .
x1
∈
real
⟶
CSNo_Im
(
SNo_pair
x0
x1
)
=
x1
(proof)
Theorem
complex_Re_real
complex_Re_real
:
∀ x0 .
x0
∈
complex
⟶
CSNo_Re
x0
∈
real
(proof)
Theorem
complex_Im_real
complex_Im_real
:
∀ x0 .
x0
∈
complex
⟶
CSNo_Im
x0
∈
real
(proof)
Theorem
complex_ReIm_split
complex_ReIm_split
:
∀ x0 .
x0
∈
complex
⟶
∀ x1 .
x1
∈
complex
⟶
CSNo_Re
x0
=
CSNo_Re
x1
⟶
CSNo_Im
x0
=
CSNo_Im
x1
⟶
x0
=
x1
(proof)
Known
real_minus_SNo
real_minus_SNo
:
∀ x0 .
x0
∈
real
⟶
minus_SNo
x0
∈
real
Theorem
complex_minus_CSNo
complex_minus_CSNo
:
∀ x0 .
x0
∈
complex
⟶
minus_CSNo
x0
∈
complex
(proof)
Known
real_add_SNo
real_add_SNo
:
∀ x0 .
x0
∈
real
⟶
∀ x1 .
x1
∈
real
⟶
add_SNo
x0
x1
∈
real
Theorem
complex_add_CSNo
complex_add_CSNo
:
∀ x0 .
x0
∈
complex
⟶
∀ x1 .
x1
∈
complex
⟶
add_CSNo
x0
x1
∈
complex
(proof)
Known
real_mul_SNo
real_mul_SNo
:
∀ x0 .
x0
∈
real
⟶
∀ x1 .
x1
∈
real
⟶
mul_SNo
x0
x1
∈
real
Theorem
complex_mul_CSNo
complex_mul_CSNo
:
∀ x0 .
x0
∈
complex
⟶
∀ x1 .
x1
∈
complex
⟶
mul_CSNo
x0
x1
∈
complex
(proof)
Theorem
real_Re_eq
real_Re_eq
:
∀ x0 .
x0
∈
real
⟶
CSNo_Re
x0
=
x0
(proof)
Theorem
real_Im_eq
real_Im_eq
:
∀ x0 .
x0
∈
real
⟶
CSNo_Im
x0
=
0
(proof)
Theorem
mul_i_real_eq
mul_i_real_eq
:
∀ x0 .
x0
∈
real
⟶
mul_CSNo
Complex_i
x0
=
SNo_pair
0
x0
(proof)
Theorem
real_Re_i_eq
real_Re_i_eq
:
∀ x0 .
x0
∈
real
⟶
CSNo_Re
(
mul_CSNo
Complex_i
x0
)
=
0
(proof)
Theorem
real_Im_i_eq
real_Im_i_eq
:
∀ x0 .
x0
∈
real
⟶
CSNo_Im
(
mul_CSNo
Complex_i
x0
)
=
x0
(proof)
Theorem
complex_eta
complex_eta
:
∀ x0 .
x0
∈
complex
⟶
x0
=
add_CSNo
(
CSNo_Re
x0
)
(
mul_CSNo
Complex_i
(
CSNo_Im
x0
)
)
(proof)
Known
real_div_SNo
real_div_SNo
:
∀ x0 .
x0
∈
real
⟶
∀ x1 .
x1
∈
real
⟶
div_SNo
x0
x1
∈
real
Theorem
complex_recip_CSNo
complex_recip_CSNo
:
∀ x0 .
x0
∈
complex
⟶
recip_CSNo
x0
∈
complex
(proof)
Theorem
complex_div_CSNo
complex_div_CSNo
:
∀ x0 .
x0
∈
complex
⟶
∀ x1 .
x1
∈
complex
⟶
div_CSNo
x0
x1
∈
complex
(proof)
Param
Sep
Sep
:
ι
→
(
ι
→
ο
) →
ι
Known
set_ext
set_ext
:
∀ x0 x1 .
x0
⊆
x1
⟶
x1
⊆
x0
⟶
x0
=
x1
Known
SepI
SepI
:
∀ x0 .
∀ x1 :
ι → ο
.
∀ x2 .
x2
∈
x0
⟶
x1
x2
⟶
x2
∈
Sep
x0
x1
Known
SepE
SepE
:
∀ x0 .
∀ x1 :
ι → ο
.
∀ x2 .
x2
∈
Sep
x0
x1
⟶
and
(
x2
∈
x0
)
(
x1
x2
)
Theorem
complex_real_set_eq
complex_real_set_eq
:
real
=
{x1 ∈
complex
|
CSNo_Re
x1
=
x1
}
(proof)