Article RADIX_5, MML version 4.99.1005
:: RADIX_5:th 1
theorem
for b1 being natural set
st 2 <= b1
holds (Radix b1) - 1 in b1 -SD;
:: RADIX_5:th 2
theorem
for b1, b2 being natural set
st 1 < b1 & b1 in Seg b2
holds b1 -' 1 in Seg b2;
:: RADIX_5:th 3
theorem
for b1 being natural set
st 2 <= b1
holds 4 <= Radix b1;
:: RADIX_5:th 4
theorem
for b1 being natural set
for b2 being Element of 1 -tuples_on (b1 -SD) holds
SDDec b2 = DigA(b2,1);
:: RADIX_5:th 5
theorem
for b1, b2, b3 being natural set
st b1 in Seg b3
holds DigA(DecSD(0,b3,b2),b1) = 0;
:: RADIX_5:th 6
theorem
for b1, b2 being natural set
st 1 <= b1
holds SDDec DecSD(0,b1,b2) = 0;
:: RADIX_5:th 7
theorem
for b1, b2 being natural set
st 1 in Seg b2 & 2 <= b1
holds DigA(DecSD(1,b2,b1),1) = 1;
:: RADIX_5:th 8
theorem
for b1, b2, b3 being natural set
st b1 in Seg b3 & 1 < b1 & 2 <= b2
holds DigA(DecSD(1,b3,b2),b1) = 0;
:: RADIX_5:th 9
theorem
for b1, b2 being natural set
st 1 <= b1 & 2 <= b2
holds SDDec DecSD(1,b1,b2) = 1;
:: RADIX_5:th 10
theorem
for b1 being natural set
st 2 <= b1
holds SD_Add_Carry Radix b1 = 1;
:: RADIX_5:th 11
theorem
for b1 being natural set
st 2 <= b1
holds SD_Add_Data(Radix b1,b1) = 0;
:: RADIX_5:th 12
theorem
for b1 being natural set
st 1 <= b1
for b2 being natural set
for b3, b4 being Element of b1 -tuples_on (b2 -SD)
st for b5 being natural set
st b5 in Seg b1
holds DigA(b3,b5) = DigA(b4,b5)
holds SDDec b3 = SDDec b4;
:: RADIX_5:th 13
theorem
for b1 being natural set
st 1 <= b1
for b2 being natural set
for b3, b4 being Element of b1 -tuples_on (b2 -SD)
st for b5 being natural set
st b5 in Seg b1
holds DigA(b4,b5) <= DigA(b3,b5)
holds SDDec b4 <= SDDec b3;
:: RADIX_5:th 14
theorem
for b1 being natural set
st 1 <= b1
for b2 being natural set
st 2 <= b2
for b3, b4, b5, b6 being Element of b1 -tuples_on (b2 -SD)
st for b7 being natural set
st b7 in Seg b1 &
(DigA(b3,b7) = DigA(b5,b7) implies DigA(b4,b7) <> DigA(b6,b7))
holds DigA(b4,b7) = DigA(b5,b7) & DigA(b3,b7) = DigA(b6,b7)
holds (SDDec b5) + SDDec b6 = (SDDec b3) + SDDec b4;
:: RADIX_5:th 15
theorem
for b1, b2 being natural set
st 1 <= b1 & 2 <= b2
for b3, b4, b5 being Element of b1 -tuples_on (b2 -SD)
st for b6 being natural set
st b6 in Seg b1 &
(DigA(b3,b6) = DigA(b5,b6) implies DigA(b4,b6) <> 0)
holds DigA(b4,b6) = DigA(b5,b6) & DigA(b3,b6) = 0
holds (SDDec b5) + SDDec DecSD(0,b1,b2) = (SDDec b3) + SDDec b4;
:: RADIX_5:funcnot 1 => RADIX_5:func 1
definition
let a1, a2, a3 be natural set;
assume 2 <= a3;
func SDMinDigit(A2,A3,A1) -> Element of a3 -SD equals
(- Radix a3) + 1
if 1 <= a1 & a1 < a2
otherwise 0;
end;
:: RADIX_5:def 1
theorem
for b1, b2, b3 being natural set
st 2 <= b3
holds (1 <= b1 & b1 < b2 implies SDMinDigit(b2,b3,b1) = (- Radix b3) + 1) &
(1 <= b1 & b1 < b2 or SDMinDigit(b2,b3,b1) = 0);
:: RADIX_5:funcnot 2 => RADIX_5:func 2
definition
let a1, a2, a3 be natural set;
func SDMin(A1,A2,A3) -> Element of a1 -tuples_on (a3 -SD) means
for b1 being natural set
st b1 in Seg a1
holds DigA(it,b1) = SDMinDigit(a2,a3,b1);
end;
:: RADIX_5:def 2
theorem
for b1, b2, b3 being natural set
for b4 being Element of b1 -tuples_on (b3 -SD) holds
b4 = SDMin(b1,b2,b3)
iff
for b5 being natural set
st b5 in Seg b1
holds DigA(b4,b5) = SDMinDigit(b2,b3,b5);
:: RADIX_5:funcnot 3 => RADIX_5:func 3
definition
let a1, a2, a3 be natural set;
assume 2 <= a3;
func SDMaxDigit(A2,A3,A1) -> Element of a3 -SD equals
(Radix a3) - 1
if 1 <= a1 & a1 < a2
otherwise 0;
end;
:: RADIX_5:def 3
theorem
for b1, b2, b3 being natural set
st 2 <= b3
holds (1 <= b1 & b1 < b2 implies SDMaxDigit(b2,b3,b1) = (Radix b3) - 1) &
(1 <= b1 & b1 < b2 or SDMaxDigit(b2,b3,b1) = 0);
:: RADIX_5:funcnot 4 => RADIX_5:func 4
definition
let a1, a2, a3 be natural set;
func SDMax(A1,A2,A3) -> Element of a1 -tuples_on (a3 -SD) means
for b1 being natural set
st b1 in Seg a1
holds DigA(it,b1) = SDMaxDigit(a2,a3,b1);
end;
:: RADIX_5:def 4
theorem
for b1, b2, b3 being natural set
for b4 being Element of b1 -tuples_on (b3 -SD) holds
b4 = SDMax(b1,b2,b3)
iff
for b5 being natural set
st b5 in Seg b1
holds DigA(b4,b5) = SDMaxDigit(b2,b3,b5);
:: RADIX_5:funcnot 5 => RADIX_5:func 5
definition
let a1, a2, a3 be natural set;
assume 2 <= a3;
func FminDigit(A2,A3,A1) -> Element of a3 -SD equals
1
if a1 = a2
otherwise 0;
end;
:: RADIX_5:def 5
theorem
for b1, b2, b3 being natural set
st 2 <= b3
holds (b1 = b2 implies FminDigit(b2,b3,b1) = 1) & (b1 = b2 or FminDigit(b2,b3,b1) = 0);
:: RADIX_5:funcnot 6 => RADIX_5:func 6
definition
let a1, a2, a3 be natural set;
func Fmin(A1,A2,A3) -> Element of a1 -tuples_on (a3 -SD) means
for b1 being natural set
st b1 in Seg a1
holds DigA(it,b1) = FminDigit(a2,a3,b1);
end;
:: RADIX_5:def 6
theorem
for b1, b2, b3 being natural set
for b4 being Element of b1 -tuples_on (b3 -SD) holds
b4 = Fmin(b1,b2,b3)
iff
for b5 being natural set
st b5 in Seg b1
holds DigA(b4,b5) = FminDigit(b2,b3,b5);
:: RADIX_5:funcnot 7 => RADIX_5:func 7
definition
let a1, a2, a3 be natural set;
assume 2 <= a3;
func FmaxDigit(A2,A3,A1) -> Element of a3 -SD equals
(Radix a3) - 1
if a1 = a2
otherwise 0;
end;
:: RADIX_5:def 7
theorem
for b1, b2, b3 being natural set
st 2 <= b3
holds (b1 = b2 implies FmaxDigit(b2,b3,b1) = (Radix b3) - 1) &
(b1 = b2 or FmaxDigit(b2,b3,b1) = 0);
:: RADIX_5:funcnot 8 => RADIX_5:func 8
definition
let a1, a2, a3 be natural set;
func Fmax(A1,A2,A3) -> Element of a1 -tuples_on (a3 -SD) means
for b1 being natural set
st b1 in Seg a1
holds DigA(it,b1) = FmaxDigit(a2,a3,b1);
end;
:: RADIX_5:def 8
theorem
for b1, b2, b3 being natural set
for b4 being Element of b1 -tuples_on (b3 -SD) holds
b4 = Fmax(b1,b2,b3)
iff
for b5 being natural set
st b5 in Seg b1
holds DigA(b4,b5) = FmaxDigit(b2,b3,b5);
:: RADIX_5:th 16
theorem
for b1, b2, b3 being natural set
st 1 <= b1 & 2 <= b3 & b2 in Seg b1
for b4 being natural set
st b4 in Seg b1
holds (DigA(SDMax(b1,b2,b3),b4)) + DigA(SDMin(b1,b2,b3),b4) = 0;
:: RADIX_5:th 17
theorem
for b1 being natural set
st 1 <= b1
for b2, b3 being natural set
st b2 in Seg b1 & 2 <= b3
holds (SDDec SDMax(b1,b2,b3)) + SDDec SDMin(b1,b2,b3) = SDDec DecSD(0,b1,b3);
:: RADIX_5:th 18
theorem
for b1 being natural set
st 1 <= b1
for b2, b3 being natural set
st b2 in Seg b1 & 2 <= b3
holds SDDec Fmin(b1,b2,b3) = (SDDec SDMax(b1,b2,b3)) + SDDec DecSD(1,b1,b3);
:: RADIX_5:th 19
theorem
for b1, b2, b3 being natural set
st b2 in Seg b1 & 2 <= b3
holds SDDec Fmin(b1 + 1,b2 + 1,b3) = (SDDec Fmin(b1 + 1,b2,b3)) + SDDec Fmax(b1 + 1,b2,b3);