Article NAT_2, MML version 4.99.1005

:: NAT_2:sch 1
scheme NAT_2:sch 1
{F1 -> non empty set,
  F2 -> Element of F1(),
  F3 -> Element of NAT}:
ex b1 being FinSequence of F1() st
   len b1 = F3() &
    (b1 /. 1 = F2() or F3() = 0) &
    (for b2 being Element of NAT
          st 1 <= b2 & b2 < F3()
       holds P1[b2, b1 /. b2, b1 /. (b2 + 1)])
provided
   for b1 being Element of NAT
      st 1 <= b1 & b1 < F3()
   for b2 being Element of F1() holds
      ex b3 being Element of F1() st
         P1[b1, b2, b3];


:: NAT_2:th 2
theorem
for b1, b2 being real set
      st 0 <= b1 & 0 < b2
   holds b1 / ([\b1 / b2/] + 1) < b2;

:: NAT_2:th 4
theorem
for b1 being natural set holds
   0 div b1 = 0;

:: NAT_2:th 5
theorem
for b1 being non empty natural set holds
   b1 div b1 = 1;

:: NAT_2:th 6
theorem
for b1 being natural set holds
   b1 div 1 = b1;

:: NAT_2:th 7
theorem
for b1, b2, b3, b4 being natural set
      st b1 <= b2 & b3 <= b2 & b1 = (b2 -' b3) + b4
   holds b3 = (b2 -' b1) + b4;

:: NAT_2:th 8
theorem
for b1, b2 being natural set
      st b1 in Seg b2
   holds (b2 -' b1) + 1 in Seg b2;

:: NAT_2:th 9
theorem
for b1, b2 being natural set
      st b1 < b2
   holds (b2 -' (b1 + 1)) + 1 = b2 -' b1;

:: NAT_2:th 10
theorem
for b1, b2 being natural set
      st b2 <= b1
   holds b2 -' b1 = 0;

:: NAT_2:th 11
theorem
for b1, b2 being non empty natural set holds
b1 -' b2 < b1;

:: NAT_2:th 12
theorem
for b1, b2 being natural set
      st b1 <= b2
   holds 2 to_power b2 = (2 to_power b1) * (2 to_power (b2 -' b1));

:: NAT_2:th 13
theorem
for b1, b2 being natural set
      st b1 <= b2
   holds 2 to_power b1 divides 2 to_power b2;

:: NAT_2:th 14
theorem
for b1, b2 being natural set
      st 0 < b1 & b2 div b1 = 0
   holds b2 < b1;

:: NAT_2:th 15
theorem
for b1, b2 being natural set
      st 0 < b1 & b1 <= b2
   holds 1 <= b2 div b1;

:: NAT_2:th 16
theorem
for b1, b2 being natural set
      st b1 <> 0
   holds (b2 + b1) div b1 = (b2 div b1) + 1;

:: NAT_2:th 17
theorem
for b1, b2, b3 being natural set
      st b1 divides b2 & 1 <= b2 & 1 <= b3 & b3 <= b1
   holds (b2 -' b3) div b1 = (b2 div b1) - 1;

:: NAT_2:th 18
theorem
for b1, b2 being natural set
      st b1 <= b2
   holds (2 to_power b2) div (2 to_power b1) = 2 to_power (b2 -' b1);

:: NAT_2:th 19
theorem
for b1 being natural set
      st 0 < b1
   holds (2 to_power b1) mod 2 = 0;

:: NAT_2:th 20
theorem
for b1 being natural set
      st 0 < b1
   holds    b1 mod 2 = 0
   iff
      (b1 -' 1) mod 2 = 1;

:: NAT_2:th 21
theorem
for b1 being non empty natural set
      st b1 <> 1
   holds 1 < b1;

:: NAT_2:th 22
theorem
for b1, b2 being natural set
      st b1 <= b2 & b2 < b1 + b1
   holds b2 div b1 = 1;

:: NAT_2:th 23
theorem
for b1 being natural set holds
      b1 is even
   iff
      b1 mod 2 = 0;

:: NAT_2:th 24
theorem
for b1 being natural set holds
      b1 is odd
   iff
      b1 mod 2 = 1;

:: NAT_2:th 25
theorem
for b1, b2, b3 being natural set
      st 1 <= b1 & b2 <= b3 & 2 * b1 divides b2
   holds    b3 div b1 is even
   iff
      (b3 -' b2) div b1 is even;

:: NAT_2:th 26
theorem
for b1, b2, b3 being natural set
      st b1 <= b2
   holds b1 div b3 <= b2 div b3;

:: NAT_2:th 27
theorem
for b1, b2 being natural set
      st b1 <= 2 * b2
   holds (b1 + 1) div 2 <= b2;

:: NAT_2:th 28
theorem
for b1 being natural set
      st b1 is even
   holds b1 div 2 = (b1 + 1) div 2;

:: NAT_2:th 29
theorem
for b1, b2, b3 being natural set holds
(b1 div b2) div b3 = b1 div (b2 * b3);

:: NAT_2:attrnot 1 => REALSET1:attr 1
definition
  let a1 be set;
  attr a1 is trivial means
    (a1 <> 0) implies a1 = 1;
end;

:: NAT_2:dfs 1
definiens
  let a1 be natural set;
To prove
     a1 is trivial
it is sufficient to prove
  thus (a1 <> 0) implies a1 = 1;

:: NAT_2:def 1
theorem
for b1 being natural set holds
      b1 is trivial
   iff
      (b1 = 0 or b1 = 1);

:: NAT_2:exreg 1
registration
  cluster ext-real non negative ordinal natural complex real integer complex-membered ext-real-membered real-membered rational-membered integer-membered natural-membered non trivial Element of NAT;
end;

:: NAT_2:exreg 2
registration
  cluster ext-real non negative ordinal natural complex real integer non trivial set;
end;

:: NAT_2:th 30
theorem
for b1 being natural set holds
      b1 is not trivial
   iff
      b1 is not empty & b1 <> 1;

:: NAT_2:th 31
theorem
for b1 being natural non trivial set holds
   2 <= b1;

:: NAT_2:sch 2
scheme NAT_2:sch 2
for b1 being non trivial Element of NAT holds
   P1[b1]
provided
   P1[2]
and
   for b1 being non trivial Element of NAT
         st P1[b1]
      holds P1[b1 + 1];


:: NAT_2:th 32
theorem
for b1, b2, b3 being natural set holds
(b1 -' b2) -' b3 = b1 -' (b2 + b3);