let a, b, q1, q2, r1, r2 be Element of ; ( b <> 0. INT.Ring & a = (q1 * b) + r1 & 0. INT.Ring <= r1 & r1 < abs b & a = (q2 * b) + r2 & 0. INT.Ring <= r2 & r2 < abs b implies ( q1 = q2 & r1 = r2 ) )
assume that
A1:
b <> 0. INT.Ring
and
A2:
a = (q1 * b) + r1
and
A3:
0. INT.Ring <= r1
and
A4:
r1 < abs b
and
A5:
a = (q2 * b) + r2
and
A6:
0. INT.Ring <= r2
and
A7:
r2 < abs b
; ( q1 = q2 & r1 = r2 )
reconsider r2' = r2 as Integer ;
reconsider r1' = r1 as Integer ;
reconsider q2' = q2 as Integer ;
reconsider q1' = q1 as Integer ;
reconsider b' = b as Integer ;
now per cases
( 0 <= r1' - r2' or r1' - r2' < 0 )
;
case A8:
0 <= r1' - r2'
;
q1 = q2A9:
(q2' - q1') * b' = r1' - r2'
by A2, A5;
hence
q1 = q2
;
verum end; case A14:
r1' - r2' < 0
;
q1 = q2
(
- (r1' - r2') = r2' - r1' &
(q1' - q2') * b' = r2' - r1' )
by A2, A5;
then A15:
0 <> q1' - q2'
by A14, XREAL_1:60;
A16:
(absreal . (q1' - q2')) * (absreal . b') >= absreal . b'
A17:
abs b =
absint . b
by Th1
.=
absreal . b
by Def6
;
- (r1' - r2') > 0
by A14, XREAL_1:60;
then A18:
r2' - r1' =
abs ((q1' - q2') * b')
by A2, A5, ABSVALUE:def 1
.=
(abs (q1' - q2')) * (abs b')
by COMPLEX1:151
.=
(absreal . (q1' - q2')) * (abs b')
by EUCLID:def 2
.=
(absreal . (q1' - q2')) * (absreal . b')
by EUCLID:def 2
;
r2' + (- r1') <= r2' + 0
by A3, Lm3, XREAL_1:8;
hence
q1 = q2
by A7, A16, A17, A18, XXREAL_0:2;
verum end; end; end;
hence
( q1 = q2 & r1 = r2 )
by A2, A5; verum