Metamath Proof Explorer


Theorem halfcut

Description: Relate the cut of twice of two numbers to the cut of the numbers. Lemma 4.2 of Gonshor p. 28. (Contributed by Scott Fenton, 7-Aug-2025)

Ref Expression
Hypotheses halfcut.1 φ A No
halfcut.2 φ B No
halfcut.3 φ A < s B
halfcut.4 No typesetting found for |- ( ph -> ( { ( 2s x.s A ) } |s { ( 2s x.s B ) } ) = ( A +s B ) ) with typecode |-
halfcut.5 C = A | s B
Assertion halfcut Could not format assertion : No typesetting found for |- ( ph -> C = ( ( A +s B ) /su 2s ) ) with typecode |-

Proof

Step Hyp Ref Expression
1 halfcut.1 φ A No
2 halfcut.2 φ B No
3 halfcut.3 φ A < s B
4 halfcut.4 Could not format ( ph -> ( { ( 2s x.s A ) } |s { ( 2s x.s B ) } ) = ( A +s B ) ) : No typesetting found for |- ( ph -> ( { ( 2s x.s A ) } |s { ( 2s x.s B ) } ) = ( A +s B ) ) with typecode |-
5 halfcut.5 C = A | s B
6 1 2 3 ssltsn φ A s B
7 6 scutcld φ A | s B No
8 5 7 eqeltrid φ C No
9 no2times Could not format ( C e. No -> ( 2s x.s C ) = ( C +s C ) ) : No typesetting found for |- ( C e. No -> ( 2s x.s C ) = ( C +s C ) ) with typecode |-
10 8 9 syl Could not format ( ph -> ( 2s x.s C ) = ( C +s C ) ) : No typesetting found for |- ( ph -> ( 2s x.s C ) = ( C +s C ) ) with typecode |-
11 5 a1i φ C = A | s B
12 6 6 11 11 addsunif φ C + s C = x | y A x = y + s C x | y A x = C + s y | s x | y B x = y + s C x | y B x = C + s y
13 oveq1 y = A y + s C = A + s C
14 13 eqeq2d y = A x = y + s C x = A + s C
15 14 rexsng A No y A x = y + s C x = A + s C
16 1 15 syl φ y A x = y + s C x = A + s C
17 16 abbidv φ x | y A x = y + s C = x | x = A + s C
18 df-sn A + s C = x | x = A + s C
19 17 18 eqtr4di φ x | y A x = y + s C = A + s C
20 oveq2 y = A C + s y = C + s A
21 20 eqeq2d y = A x = C + s y x = C + s A
22 21 rexsng A No y A x = C + s y x = C + s A
23 1 22 syl φ y A x = C + s y x = C + s A
24 8 1 addscomd φ C + s A = A + s C
25 24 eqeq2d φ x = C + s A x = A + s C
26 23 25 bitrd φ y A x = C + s y x = A + s C
27 26 abbidv φ x | y A x = C + s y = x | x = A + s C
28 27 18 eqtr4di φ x | y A x = C + s y = A + s C
29 19 28 uneq12d φ x | y A x = y + s C x | y A x = C + s y = A + s C A + s C
30 unidm A + s C A + s C = A + s C
31 29 30 eqtrdi φ x | y A x = y + s C x | y A x = C + s y = A + s C
32 oveq1 y = B y + s C = B + s C
33 32 eqeq2d y = B x = y + s C x = B + s C
34 33 rexsng B No y B x = y + s C x = B + s C
35 2 34 syl φ y B x = y + s C x = B + s C
36 35 abbidv φ x | y B x = y + s C = x | x = B + s C
37 df-sn B + s C = x | x = B + s C
38 36 37 eqtr4di φ x | y B x = y + s C = B + s C
39 oveq2 y = B C + s y = C + s B
40 39 eqeq2d y = B x = C + s y x = C + s B
41 40 rexsng B No y B x = C + s y x = C + s B
42 2 41 syl φ y B x = C + s y x = C + s B
43 8 2 addscomd φ C + s B = B + s C
44 43 eqeq2d φ x = C + s B x = B + s C
45 42 44 bitrd φ y B x = C + s y x = B + s C
46 45 abbidv φ x | y B x = C + s y = x | x = B + s C
47 46 37 eqtr4di φ x | y B x = C + s y = B + s C
48 38 47 uneq12d φ x | y B x = y + s C x | y B x = C + s y = B + s C B + s C
49 unidm B + s C B + s C = B + s C
50 48 49 eqtrdi φ x | y B x = y + s C x | y B x = C + s y = B + s C
51 31 50 oveq12d φ x | y A x = y + s C x | y A x = C + s y | s x | y B x = y + s C x | y B x = C + s y = A + s C | s B + s C
52 2sno Could not format 2s e. No : No typesetting found for |- 2s e. No with typecode |-
53 52 a1i Could not format ( ph -> 2s e. No ) : No typesetting found for |- ( ph -> 2s e. No ) with typecode |-
54 53 1 mulscld Could not format ( ph -> ( 2s x.s A ) e. No ) : No typesetting found for |- ( ph -> ( 2s x.s A ) e. No ) with typecode |-
55 53 2 mulscld Could not format ( ph -> ( 2s x.s B ) e. No ) : No typesetting found for |- ( ph -> ( 2s x.s B ) e. No ) with typecode |-
56 2nns Could not format 2s e. NN_s : No typesetting found for |- 2s e. NN_s with typecode |-
57 nnsgt0 Could not format ( 2s e. NN_s -> 0s 0s
58 56 57 mp1i Could not format ( ph -> 0s 0s
59 1 2 53 58 sltmul2d Could not format ( ph -> ( A ( 2s x.s A ) ( A ( 2s x.s A )
60 3 59 mpbid Could not format ( ph -> ( 2s x.s A ) ( 2s x.s A )
61 54 55 60 ssltsn Could not format ( ph -> { ( 2s x.s A ) } < { ( 2s x.s A ) } <
62 1 8 addscld φ A + s C No
63 no2times Could not format ( A e. No -> ( 2s x.s A ) = ( A +s A ) ) : No typesetting found for |- ( A e. No -> ( 2s x.s A ) = ( A +s A ) ) with typecode |-
64 1 63 syl Could not format ( ph -> ( 2s x.s A ) = ( A +s A ) ) : No typesetting found for |- ( ph -> ( 2s x.s A ) = ( A +s A ) ) with typecode |-
65 slerflex A No A s A
66 1 65 syl φ A s A
67 breq2 x = A A s x A s A
68 67 rexsng A No x A A s x A s A
69 1 68 syl φ x A A s x A s A
70 66 69 mpbird φ x A A s x
71 70 orcd φ x A A s x y R A y s C
72 lltropt L A s R A
73 72 a1i φ L A s R A
74 lrcut A No L A | s R A = A
75 1 74 syl φ L A | s R A = A
76 75 eqcomd φ A = L A | s R A
77 sltrec L A s R A A s B A = L A | s R A C = A | s B A < s C x A A s x y R A y s C
78 73 6 76 11 77 syl22anc φ A < s C x A A s x y R A y s C
79 71 78 mpbird φ A < s C
80 1 8 1 sltadd2d φ A < s C A + s A < s A + s C
81 79 80 mpbid φ A + s A < s A + s C
82 64 81 eqbrtrd Could not format ( ph -> ( 2s x.s A ) ( 2s x.s A )
83 54 62 82 sltled Could not format ( ph -> ( 2s x.s A ) <_s ( A +s C ) ) : No typesetting found for |- ( ph -> ( 2s x.s A ) <_s ( A +s C ) ) with typecode |-
84 ovex A + s C V
85 breq2 y = A + s C x s y x s A + s C
86 84 85 rexsn y A + s C x s y x s A + s C
87 86 ralbii Could not format ( A. x e. { ( 2s x.s A ) } E. y e. { ( A +s C ) } x <_s y <-> A. x e. { ( 2s x.s A ) } x <_s ( A +s C ) ) : No typesetting found for |- ( A. x e. { ( 2s x.s A ) } E. y e. { ( A +s C ) } x <_s y <-> A. x e. { ( 2s x.s A ) } x <_s ( A +s C ) ) with typecode |-
88 ovex Could not format ( 2s x.s A ) e. _V : No typesetting found for |- ( 2s x.s A ) e. _V with typecode |-
89 breq1 Could not format ( x = ( 2s x.s A ) -> ( x <_s ( A +s C ) <-> ( 2s x.s A ) <_s ( A +s C ) ) ) : No typesetting found for |- ( x = ( 2s x.s A ) -> ( x <_s ( A +s C ) <-> ( 2s x.s A ) <_s ( A +s C ) ) ) with typecode |-
90 88 89 ralsn Could not format ( A. x e. { ( 2s x.s A ) } x <_s ( A +s C ) <-> ( 2s x.s A ) <_s ( A +s C ) ) : No typesetting found for |- ( A. x e. { ( 2s x.s A ) } x <_s ( A +s C ) <-> ( 2s x.s A ) <_s ( A +s C ) ) with typecode |-
91 87 90 bitri Could not format ( A. x e. { ( 2s x.s A ) } E. y e. { ( A +s C ) } x <_s y <-> ( 2s x.s A ) <_s ( A +s C ) ) : No typesetting found for |- ( A. x e. { ( 2s x.s A ) } E. y e. { ( A +s C ) } x <_s y <-> ( 2s x.s A ) <_s ( A +s C ) ) with typecode |-
92 83 91 sylibr Could not format ( ph -> A. x e. { ( 2s x.s A ) } E. y e. { ( A +s C ) } x <_s y ) : No typesetting found for |- ( ph -> A. x e. { ( 2s x.s A ) } E. y e. { ( A +s C ) } x <_s y ) with typecode |-
93 2 8 addscld φ B + s C No
94 slerflex B No B s B
95 2 94 syl φ B s B
96 breq1 y = B y s B B s B
97 96 rexsng B No y B y s B B s B
98 2 97 syl φ y B y s B B s B
99 95 98 mpbird φ y B y s B
100 99 olcd φ x L B C s x y B y s B
101 lltropt L B s R B
102 101 a1i φ L B s R B
103 lrcut B No L B | s R B = B
104 2 103 syl φ L B | s R B = B
105 104 eqcomd φ B = L B | s R B
106 sltrec A s B L B s R B C = A | s B B = L B | s R B C < s B x L B C s x y B y s B
107 6 102 11 105 106 syl22anc φ C < s B x L B C s x y B y s B
108 100 107 mpbird φ C < s B
109 8 2 2 sltadd2d φ C < s B B + s C < s B + s B
110 108 109 mpbid φ B + s C < s B + s B
111 no2times Could not format ( B e. No -> ( 2s x.s B ) = ( B +s B ) ) : No typesetting found for |- ( B e. No -> ( 2s x.s B ) = ( B +s B ) ) with typecode |-
112 2 111 syl Could not format ( ph -> ( 2s x.s B ) = ( B +s B ) ) : No typesetting found for |- ( ph -> ( 2s x.s B ) = ( B +s B ) ) with typecode |-
113 110 112 breqtrrd Could not format ( ph -> ( B +s C ) ( B +s C )
114 93 55 113 sltled Could not format ( ph -> ( B +s C ) <_s ( 2s x.s B ) ) : No typesetting found for |- ( ph -> ( B +s C ) <_s ( 2s x.s B ) ) with typecode |-
115 ovex B + s C V
116 breq1 y = B + s C y s x B + s C s x
117 115 116 rexsn y B + s C y s x B + s C s x
118 117 ralbii Could not format ( A. x e. { ( 2s x.s B ) } E. y e. { ( B +s C ) } y <_s x <-> A. x e. { ( 2s x.s B ) } ( B +s C ) <_s x ) : No typesetting found for |- ( A. x e. { ( 2s x.s B ) } E. y e. { ( B +s C ) } y <_s x <-> A. x e. { ( 2s x.s B ) } ( B +s C ) <_s x ) with typecode |-
119 ovex Could not format ( 2s x.s B ) e. _V : No typesetting found for |- ( 2s x.s B ) e. _V with typecode |-
120 breq2 Could not format ( x = ( 2s x.s B ) -> ( ( B +s C ) <_s x <-> ( B +s C ) <_s ( 2s x.s B ) ) ) : No typesetting found for |- ( x = ( 2s x.s B ) -> ( ( B +s C ) <_s x <-> ( B +s C ) <_s ( 2s x.s B ) ) ) with typecode |-
121 119 120 ralsn Could not format ( A. x e. { ( 2s x.s B ) } ( B +s C ) <_s x <-> ( B +s C ) <_s ( 2s x.s B ) ) : No typesetting found for |- ( A. x e. { ( 2s x.s B ) } ( B +s C ) <_s x <-> ( B +s C ) <_s ( 2s x.s B ) ) with typecode |-
122 118 121 bitri Could not format ( A. x e. { ( 2s x.s B ) } E. y e. { ( B +s C ) } y <_s x <-> ( B +s C ) <_s ( 2s x.s B ) ) : No typesetting found for |- ( A. x e. { ( 2s x.s B ) } E. y e. { ( B +s C ) } y <_s x <-> ( B +s C ) <_s ( 2s x.s B ) ) with typecode |-
123 114 122 sylibr Could not format ( ph -> A. x e. { ( 2s x.s B ) } E. y e. { ( B +s C ) } y <_s x ) : No typesetting found for |- ( ph -> A. x e. { ( 2s x.s B ) } E. y e. { ( B +s C ) } y <_s x ) with typecode |-
124 1 2 addscld φ A + s B No
125 8 2 1 sltadd2d φ C < s B A + s C < s A + s B
126 108 125 mpbid φ A + s C < s A + s B
127 62 124 126 ssltsn φ A + s C s A + s B
128 4 sneqd Could not format ( ph -> { ( { ( 2s x.s A ) } |s { ( 2s x.s B ) } ) } = { ( A +s B ) } ) : No typesetting found for |- ( ph -> { ( { ( 2s x.s A ) } |s { ( 2s x.s B ) } ) } = { ( A +s B ) } ) with typecode |-
129 127 128 breqtrrd Could not format ( ph -> { ( A +s C ) } < { ( A +s C ) } <
130 1 2 addscomd φ A + s B = B + s A
131 1 8 2 sltadd2d φ A < s C B + s A < s B + s C
132 79 131 mpbid φ B + s A < s B + s C
133 130 132 eqbrtrd φ A + s B < s B + s C
134 124 93 133 ssltsn φ A + s B s B + s C
135 128 134 eqbrtrd Could not format ( ph -> { ( { ( 2s x.s A ) } |s { ( 2s x.s B ) } ) } < { ( { ( 2s x.s A ) } |s { ( 2s x.s B ) } ) } <
136 61 92 123 129 135 cofcut1d Could not format ( ph -> ( { ( 2s x.s A ) } |s { ( 2s x.s B ) } ) = ( { ( A +s C ) } |s { ( B +s C ) } ) ) : No typesetting found for |- ( ph -> ( { ( 2s x.s A ) } |s { ( 2s x.s B ) } ) = ( { ( A +s C ) } |s { ( B +s C ) } ) ) with typecode |-
137 51 136 4 3eqtr2d φ x | y A x = y + s C x | y A x = C + s y | s x | y B x = y + s C x | y B x = C + s y = A + s B
138 10 12 137 3eqtrd Could not format ( ph -> ( 2s x.s C ) = ( A +s B ) ) : No typesetting found for |- ( ph -> ( 2s x.s C ) = ( A +s B ) ) with typecode |-
139 2ne0s Could not format 2s =/= 0s : No typesetting found for |- 2s =/= 0s with typecode |-
140 139 a1i Could not format ( ph -> 2s =/= 0s ) : No typesetting found for |- ( ph -> 2s =/= 0s ) with typecode |-
141 124 8 53 140 divsmuld Could not format ( ph -> ( ( ( A +s B ) /su 2s ) = C <-> ( 2s x.s C ) = ( A +s B ) ) ) : No typesetting found for |- ( ph -> ( ( ( A +s B ) /su 2s ) = C <-> ( 2s x.s C ) = ( A +s B ) ) ) with typecode |-
142 138 141 mpbird Could not format ( ph -> ( ( A +s B ) /su 2s ) = C ) : No typesetting found for |- ( ph -> ( ( A +s B ) /su 2s ) = C ) with typecode |-
143 142 eqcomd Could not format ( ph -> C = ( ( A +s B ) /su 2s ) ) : No typesetting found for |- ( ph -> C = ( ( A +s B ) /su 2s ) ) with typecode |-