LEMMA 1

*******

 

Here we construct an exponentiation function exp using an arbitrary value x0 for exp(0,0).

 

     ALL(x0):[x0 e n

     => EXIST(exp):[ALL(a):ALL(b):[a e n & b e n => exp(a,b) e n]

     & exp(0,0)=x0

     & ALL(a):[a e n => [~a=0 => exp(a,0)=1]]

     & ALL(a):ALL(b):[a e n & b e n => exp(a,b+1)=exp(a,b)*a]]]

 

 

This formal, machine-verified proof was written with the aid of the author's DC Proof 2.0 freeware available at http://www.dcproof.com

 

 

AXIOMS USED

***********

 

Function Axiom (2 variables)

 

1     ALL(f):ALL(a1):ALL(a2):ALL(b):[Set''(f) & Set(a1) & Set(a2) & Set(b)

    => [ALL(c1):ALL(c2):ALL(d):[(c1,c2,d) e f => c1 e a1 & c2 e a2 & d e b]

    & ALL(c1):ALL(c2):[c1 e a1 & c2 e a2 => EXIST(d):[d e b & (c1,c2,d) e f]]

    & ALL(c1):ALL(c2):ALL(d1):ALL(d2):[(c1,c2,d1) e f & (c1,c2,d2) e f => d1=d2]

    => ALL(c1):ALL(c2):ALL(d):[c1 e a1 & c2 e a2 & d e b => [d=f(c1,c2) <=> (c1,c2,d) e f]]]]

      Axiom

 

2     Set(n)

      Axiom

 

3     0 e n

      Axiom

 

4     ALL(a):ALL(b):[a e n & b e n => [a+1=b+1 => a=b]]

      Axiom

 

5     ALL(a):[a e n => ~a+1=0]

      Axiom

 

6     ALL(a):[Set(a) & ALL(b):[b e a => b e n]

    => [0 e a & ALL(b):[b e a => b+1 e a]

    => ALL(b):[b e n => b e a]]]

      Axiom

 

7     1 e n

      Axiom

 

8     2 e n

      Axiom

 

9     ALL(a):ALL(b):[a e n & b e n => a+b e n]

      Axiom

 

10   ALL(a):ALL(b):[a e n & b e n => a*b e n]

      Axiom

 

   

    PROOF

    *****

   

    Suppose...

 

      11   x0 e n

            Premise

 

    Apply Cartesian Product Axiom

 

      12   ALL(a1):ALL(a2):ALL(a3):[Set(a1) & Set(a2) & Set(a3) => EXIST(b):[Set''(b) & ALL(c1):ALL(c2):ALL(c3):[(c1,c2,c3) e b <=> c1 e a1 & c2 e a2 & c3 e a3]]]

            Cart Prod

 

      13   ALL(a2):ALL(a3):[Set(n) & Set(a2) & Set(a3) => EXIST(b):[Set''(b) & ALL(c1):ALL(c2):ALL(c3):[(c1,c2,c3) e b <=> c1 e n & c2 e a2 & c3 e a3]]]

            U Spec, 12

 

      14   ALL(a3):[Set(n) & Set(n) & Set(a3) => EXIST(b):[Set''(b) & ALL(c1):ALL(c2):ALL(c3):[(c1,c2,c3) e b <=> c1 e n & c2 e n & c3 e a3]]]

            U Spec, 13

 

      15   Set(n) & Set(n) & Set(n) => EXIST(b):[Set''(b) & ALL(c1):ALL(c2):ALL(c3):[(c1,c2,c3) e b <=> c1 e n & c2 e n & c3 e n]]

            U Spec, 14

 

      16   Set(n) & Set(n)

            Join, 2, 2

 

      17   Set(n) & Set(n) & Set(n)

            Join, 16, 2

 

      18   EXIST(b):[Set''(b) & ALL(c1):ALL(c2):ALL(c3):[(c1,c2,c3) e b <=> c1 e n & c2 e n & c3 e n]]

            Detach, 15, 17

 

      19   Set''(n3) & ALL(c1):ALL(c2):ALL(c3):[(c1,c2,c3) e n3 <=> c1 e n & c2 e n & c3 e n]

            E Spec, 18

 

   

    Define:  n3

    ***********

 

      20   Set''(n3)

            Split, 19

 

      21   ALL(c1):ALL(c2):ALL(c3):[(c1,c2,c3) e n3 <=> c1 e n & c2 e n & c3 e n]

            Split, 19

 

   

    Apply Subset Axiom

 

      22   EXIST(sub):[Set''(sub) & ALL(a):ALL(b):ALL(c):[(a,b,c) e sub

         <=> (a,b,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (a,b,c) e d]]]]

            Subset, 20

 

      23   Set''(exp) & ALL(a):ALL(b):ALL(c):[(a,b,c) e exp

         <=> (a,b,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (a,b,c) e d]]]

            E Spec, 22

 

   

    Define: exp  (a subset of n3)

    ***********

 

      24   Set''(exp)

            Split, 23

 

      25   ALL(a):ALL(b):ALL(c):[(a,b,c) e exp

         <=> (a,b,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (a,b,c) e d]]]

            Split, 23

 

        

         Prove: ALL(a):ALL(b):ALL(c):[(a,b,c) e exp => a e n & b e n & c e n & (a,b,c) e n3]

        

         Suppose...

 

            26   (x,y,z) e exp

                  Premise

 

            27   ALL(b):ALL(c):[(x,b,c) e exp

             <=> (x,b,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,b,c) e d]]]

                  U Spec, 25

 

            28   ALL(c):[(x,y,c) e exp

             <=> (x,y,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,c) e d]]]

                  U Spec, 27

 

            29   (x,y,z) e exp

             <=> (x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]]

                  U Spec, 28

 

            30   [(x,y,z) e exp => (x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]]]

             & [(x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]] => (x,y,z) e exp]

                  Iff-And, 29

 

            31   (x,y,z) e exp => (x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]]

                  Split, 30

 

            32   (x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]] => (x,y,z) e exp

                  Split, 30

 

            33   (x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]]

                  Detach, 31, 26

 

            34   (x,y,z) e n3

                  Split, 33

 

            35   ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]]

                  Split, 33

 

            36   ALL(c2):ALL(c3):[(x,c2,c3) e n3 <=> x e n & c2 e n & c3 e n]

                  U Spec, 21

 

            37   ALL(c3):[(x,y,c3) e n3 <=> x e n & y e n & c3 e n]

                  U Spec, 36

 

            38   (x,y,z) e n3 <=> x e n & y e n & z e n

                  U Spec, 37

 

            39   [(x,y,z) e n3 => x e n & y e n & z e n]

             & [x e n & y e n & z e n => (x,y,z) e n3]

                  Iff-And, 38

 

            40   (x,y,z) e n3 => x e n & y e n & z e n

                  Split, 39

 

            41   x e n & y e n & z e n => (x,y,z) e n3

                  Split, 39

 

            42   x e n & y e n & z e n

                  Detach, 40, 34

 

            43   x e n & y e n & z e n & (x,y,z) e n3

                  Join, 42, 34

 

    As Required:

 

      44   ALL(a):ALL(b):ALL(c):[(a,b,c) e exp => a e n & b e n & c e n & (a,b,c) e n3]

            4 Conclusion, 26

 

   

    Prove: (0,0,x0) e exp

   

    Apply definition of exp

 

      45   ALL(b):ALL(c):[(0,b,c) e exp

         <=> (0,b,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (0,b,c) e d]]]

            U Spec, 25

 

      46   ALL(c):[(0,0,c) e exp

         <=> (0,0,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (0,0,c) e d]]]

            U Spec, 45

 

      47   (0,0,x0) e exp

         <=> (0,0,x0) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (0,0,x0) e d]]

            U Spec, 46

 

      48   [(0,0,x0) e exp => (0,0,x0) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (0,0,x0) e d]]]

         & [(0,0,x0) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (0,0,x0) e d]] => (0,0,x0) e exp]

            Iff-And, 47

 

      49   (0,0,x0) e exp => (0,0,x0) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (0,0,x0) e d]]

            Split, 48

 

    Sufficient: For (0,0,x0) e exp

 

      50   (0,0,x0) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (0,0,x0) e d]] => (0,0,x0) e exp

            Split, 48

 

      51   ALL(c2):ALL(c3):[(0,c2,c3) e n3 <=> 0 e n & c2 e n & c3 e n]

            U Spec, 21

 

      52   ALL(c3):[(0,0,c3) e n3 <=> 0 e n & 0 e n & c3 e n]

            U Spec, 51

 

      53   (0,0,x0) e n3 <=> 0 e n & 0 e n & x0 e n

            U Spec, 52

 

      54   [(0,0,x0) e n3 => 0 e n & 0 e n & x0 e n]

         & [0 e n & 0 e n & x0 e n => (0,0,x0) e n3]

            Iff-And, 53

 

      55   (0,0,x0) e n3 => 0 e n & 0 e n & x0 e n

            Split, 54

 

      56   0 e n & 0 e n & x0 e n => (0,0,x0) e n3

            Split, 54

 

      57   0 e n & 0 e n

            Join, 3, 3

 

      58   0 e n & 0 e n & x0 e n

            Join, 57, 11

 

      59   (0,0,x0) e n3

            Detach, 56, 58

 

            60   Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                  Premise

 

                  61   (0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                        Premise

 

                  62   (0,0,x0) e d

                        Split, 61

 

            63   (0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (0,0,x0) e d

                  4 Conclusion, 61

 

      64   ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (0,0,x0) e d]]

            4 Conclusion, 60

 

      65   (0,0,x0) e n3

         & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

         => [(0,0,x0) e d

         & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

         & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

         => (0,0,x0) e d]]

            Join, 59, 64

 

    As Required:

 

      66   (0,0,x0) e exp

            Detach, 50, 65

 

        

         Prove: ALL(a):[a e n => [~a=0 => (a,0,1) e exp]]

        

         Suppose...

 

            67   x e n

                  Premise

 

            

             Prove: ~x=0 => (x,0,1) e exp

            

             Suppose...

 

                  68   ~x=0

                        Premise

 

                  69   ALL(b):ALL(c):[(x,b,c) e exp

                 <=> (x,b,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (x,b,c) e d]]]

                        U Spec, 25

 

                  70   ALL(c):[(x,0,c) e exp

                 <=> (x,0,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (x,0,c) e d]]]

                        U Spec, 69

 

                  71   (x,0,1) e exp

                 <=> (x,0,1) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (x,0,1) e d]]

                        U Spec, 70

 

                  72   [(x,0,1) e exp => (x,0,1) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (x,0,1) e d]]]

                 & [(x,0,1) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (x,0,1) e d]] => (x,0,1) e exp]

                        Iff-And, 71

 

                  73   (x,0,1) e exp => (x,0,1) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (x,0,1) e d]]

                        Split, 72

 

             Sufficient: For (x,0,1) e exp

 

                  74   (x,0,1) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (x,0,1) e d]] => (x,0,1) e exp

                        Split, 72

 

                  75   ALL(c2):ALL(c3):[(x,c2,c3) e n3 <=> x e n & c2 e n & c3 e n]

                        U Spec, 21

 

                  76   ALL(c3):[(x,0,c3) e n3 <=> x e n & 0 e n & c3 e n]

                        U Spec, 75

 

                  77   (x,0,1) e n3 <=> x e n & 0 e n & 1 e n

                        U Spec, 76

 

                  78   [(x,0,1) e n3 => x e n & 0 e n & 1 e n]

                 & [x e n & 0 e n & 1 e n => (x,0,1) e n3]

                        Iff-And, 77

 

                  79   (x,0,1) e n3 => x e n & 0 e n & 1 e n

                        Split, 78

 

                  80   x e n & 0 e n & 1 e n => (x,0,1) e n3

                        Split, 78

 

                  81   x e n & 0 e n

                        Join, 67, 3

 

                  82   x e n & 0 e n & 1 e n

                        Join, 81, 7

 

                  83   (x,0,1) e n3

                        Detach, 80, 82

 

                        84   Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                              Premise

 

                      Suppose...

 

                              85   (0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                                    Premise

 

                              86   (0,0,x0) e d

                                    Split, 85

 

                              87   ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                                    Split, 85

 

                              88   ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                                    Split, 85

 

                              89   x e n => [~x=0 => (x,0,1) e d]

                                    U Spec, 87

 

                              90   ~x=0 => (x,0,1) e d

                                    Detach, 89, 67

 

                              91   (x,0,1) e d

                                    Detach, 90, 68

 

                        92   (0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (x,0,1) e d

                              4 Conclusion, 85

 

                  93   ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (x,0,1) e d]]

                        4 Conclusion, 84

 

                  94   (x,0,1) e n3

                 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (x,0,1) e d]]

                        Join, 83, 93

 

                  95   (x,0,1) e exp

                        Detach, 74, 94

 

         As Required:

 

            96   ~x=0 => (x,0,1) e exp

                  4 Conclusion, 68

 

    As Required:

 

      97   ALL(a):[a e n => [~a=0 => (a,0,1) e exp]]

            4 Conclusion, 67

 

        

         Prove: ALL(a):ALL(b):ALL(c):[(a,b,c) e exp => (a,b+1,c*a) e exp]

        

         Suppose...

 

            98   (x,y,z) e exp

                  Premise

 

            99   ALL(b):ALL(c):[(x,b,c) e exp

             <=> (x,b,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,b,c) e d]]]

                  U Spec, 25

 

            100  ALL(c):[(x,y,c) e exp

             <=> (x,y,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,c) e d]]]

                  U Spec, 99

 

            101  (x,y,z) e exp

             <=> (x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]]

                  U Spec, 100

 

            102  [(x,y,z) e exp => (x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]]]

             & [(x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]] => (x,y,z) e exp]

                  Iff-And, 101

 

            103  (x,y,z) e exp => (x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]]

                  Split, 102

 

            104  (x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]] => (x,y,z) e exp

                  Split, 102

 

            105  (x,y,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]]

                  Detach, 103, 98

 

            106  (x,y,z) e n3

                  Split, 105

 

            107  ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y,z) e d]]

                  Split, 105

 

            108  ALL(b):ALL(c):[(x,b,c) e exp

             <=> (x,b,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,b,c) e d]]]

                  U Spec, 25

 

            109  ALL(c):[(x,y+1,c) e exp

             <=> (x,y+1,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y+1,c) e d]]]

                  U Spec, 108

 

            110  (x,y+1,z*x) e exp

             <=> (x,y+1,z*x) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y+1,z*x) e d]]

                  U Spec, 109

 

            111  [(x,y+1,z*x) e exp => (x,y+1,z*x) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y+1,z*x) e d]]]

             & [(x,y+1,z*x) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y+1,z*x) e d]] => (x,y+1,z*x) e exp]

                  Iff-And, 110

 

            112  (x,y+1,z*x) e exp => (x,y+1,z*x) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y+1,z*x) e d]]

                  Split, 111

 

         Sufficient: For (x,y+1,z*x) e exp

 

            113  (x,y+1,z*x) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y+1,z*x) e d]] => (x,y+1,z*x) e exp

                  Split, 111

 

            114  ALL(c2):ALL(c3):[(x,c2,c3) e n3 <=> x e n & c2 e n & c3 e n]

                  U Spec, 21

 

            115  ALL(c3):[(x,y+1,c3) e n3 <=> x e n & y+1 e n & c3 e n]

                  U Spec, 114

 

            116  (x,y+1,z*x) e n3 <=> x e n & y+1 e n & z*x e n

                  U Spec, 115

 

            117  [(x,y+1,z*x) e n3 => x e n & y+1 e n & z*x e n]

             & [x e n & y+1 e n & z*x e n => (x,y+1,z*x) e n3]

                  Iff-And, 116

 

            118  (x,y+1,z*x) e n3 => x e n & y+1 e n & z*x e n

                  Split, 117

 

            119  x e n & y+1 e n & z*x e n => (x,y+1,z*x) e n3

                  Split, 117

 

            120  ALL(b):[y e n & b e n => y+b e n]

                  U Spec, 9

 

            121  y e n & 1 e n => y+1 e n

                  U Spec, 120

 

            122  ALL(b):ALL(c):[(x,b,c) e exp => x e n & b e n & c e n & (x,b,c) e n3]

                  U Spec, 44

 

            123  ALL(c):[(x,y,c) e exp => x e n & y e n & c e n & (x,y,c) e n3]

                  U Spec, 122

 

            124  (x,y,z) e exp => x e n & y e n & z e n & (x,y,z) e n3

                  U Spec, 123

 

            125  x e n & y e n & z e n & (x,y,z) e n3

                  Detach, 124, 98

 

            126  x e n

                  Split, 125

 

            127  y e n

                  Split, 125

 

            128  z e n

                  Split, 125

 

            129  (x,y,z) e n3

                  Split, 125

 

            130  y e n & 1 e n

                  Join, 127, 7

 

            131  y+1 e n

                  Detach, 121, 130

 

            132  ALL(b):[z e n & b e n => z*b e n]

                  U Spec, 10

 

            133  z e n & x e n => z*x e n

                  U Spec, 132

 

            134  z e n & x e n

                  Join, 128, 126

 

            135  z*x e n

                  Detach, 133, 134

 

            136  x e n & y+1 e n

                  Join, 126, 131

 

            137  x e n & y+1 e n & z*x e n

                  Join, 136, 135

 

            138  (x,y+1,z*x) e n3

                  Detach, 119, 137

 

            

             Prove: ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                    => [(0,0,x0) e d

                    & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                    & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                    => (x,y+1,z*x) e d]]

            

             Suppose...

 

                  139  Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                        Premise

 

                 Suppose...

 

                        140  (0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                              Premise

 

                        141  (0,0,x0) e d

                              Split, 140

 

                        142  ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                              Split, 140

 

                        143  ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                              Split, 140

 

                        144  ALL(f):ALL(g):[(x,f,g) e d => (x,f+1,g*x) e d]

                              U Spec, 143

 

                        145  ALL(g):[(x,y,g) e d => (x,y+1,g*x) e d]

                              U Spec, 144

 

                        146  (x,y,z) e d => (x,y+1,z*x) e d

                              U Spec, 145

 

                        147  Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (x,y,z) e d]

                              U Spec, 107

 

                        148  (0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (x,y,z) e d

                              Detach, 147, 139

 

                        149  (x,y,z) e d

                              Detach, 148, 140

 

                        150  (x,y+1,z*x) e d

                              Detach, 146, 149

 

                  151  (0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (x,y+1,z*x) e d

                        4 Conclusion, 140

 

            152  ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y+1,z*x) e d]]

                  4 Conclusion, 139

 

            153  (x,y+1,z*x) e n3

             & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

             => [(0,0,x0) e d

             & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

             & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

             => (x,y+1,z*x) e d]]

                  Join, 138, 152

 

            154  (x,y+1,z*x) e exp

                  Detach, 113, 153

 

    As Required:

 

      155  ALL(a):ALL(b):ALL(c):[(a,b,c) e exp => (a,b+1,c*a) e exp]

            4 Conclusion, 98

 

    Apply Function Axiom  (2 varibles, as given)

 

      156  ALL(a1):ALL(a2):ALL(b):[Set''(exp) & Set(a1) & Set(a2) & Set(b)

         => [ALL(c1):ALL(c2):ALL(d):[(c1,c2,d) e exp => c1 e a1 & c2 e a2 & d e b]

         & ALL(c1):ALL(c2):[c1 e a1 & c2 e a2 => EXIST(d):[d e b & (c1,c2,d) e exp]]

         & ALL(c1):ALL(c2):ALL(d1):ALL(d2):[(c1,c2,d1) e exp & (c1,c2,d2) e exp => d1=d2]

         => ALL(c1):ALL(c2):ALL(d):[c1 e a1 & c2 e a2 & d e b => [d=exp(c1,c2) <=> (c1,c2,d) e exp]]]]

            U Spec, 1

 

      157  ALL(a2):ALL(b):[Set''(exp) & Set(n) & Set(a2) & Set(b)

         => [ALL(c1):ALL(c2):ALL(d):[(c1,c2,d) e exp => c1 e n & c2 e a2 & d e b]

         & ALL(c1):ALL(c2):[c1 e n & c2 e a2 => EXIST(d):[d e b & (c1,c2,d) e exp]]

         & ALL(c1):ALL(c2):ALL(d1):ALL(d2):[(c1,c2,d1) e exp & (c1,c2,d2) e exp => d1=d2]

         => ALL(c1):ALL(c2):ALL(d):[c1 e n & c2 e a2 & d e b => [d=exp(c1,c2) <=> (c1,c2,d) e exp]]]]

            U Spec, 156

 

      158  ALL(b):[Set''(exp) & Set(n) & Set(n) & Set(b)

         => [ALL(c1):ALL(c2):ALL(d):[(c1,c2,d) e exp => c1 e n & c2 e n & d e b]

         & ALL(c1):ALL(c2):[c1 e n & c2 e n => EXIST(d):[d e b & (c1,c2,d) e exp]]

         & ALL(c1):ALL(c2):ALL(d1):ALL(d2):[(c1,c2,d1) e exp & (c1,c2,d2) e exp => d1=d2]

         => ALL(c1):ALL(c2):ALL(d):[c1 e n & c2 e n & d e b => [d=exp(c1,c2) <=> (c1,c2,d) e exp]]]]

            U Spec, 157

 

      159  Set''(exp) & Set(n) & Set(n) & Set(n)

         => [ALL(c1):ALL(c2):ALL(d):[(c1,c2,d) e exp => c1 e n & c2 e n & d e n]

         & ALL(c1):ALL(c2):[c1 e n & c2 e n => EXIST(d):[d e n & (c1,c2,d) e exp]]

         & ALL(c1):ALL(c2):ALL(d1):ALL(d2):[(c1,c2,d1) e exp & (c1,c2,d2) e exp => d1=d2]

         => ALL(c1):ALL(c2):ALL(d):[c1 e n & c2 e n & d e n => [d=exp(c1,c2) <=> (c1,c2,d) e exp]]]

            U Spec, 158

 

      160  Set''(exp) & Set(n)

            Join, 24, 2

 

      161  Set''(exp) & Set(n) & Set(n)

            Join, 160, 2

 

      162  Set''(exp) & Set(n) & Set(n) & Set(n)

            Join, 161, 2

 

    Sufficient: For functionality of exp

 

      163  ALL(c1):ALL(c2):ALL(d):[(c1,c2,d) e exp => c1 e n & c2 e n & d e n]

         & ALL(c1):ALL(c2):[c1 e n & c2 e n => EXIST(d):[d e n & (c1,c2,d) e exp]]

         & ALL(c1):ALL(c2):ALL(d1):ALL(d2):[(c1,c2,d1) e exp & (c1,c2,d2) e exp => d1=d2]

         => ALL(c1):ALL(c2):ALL(d):[c1 e n & c2 e n & d e n => [d=exp(c1,c2) <=> (c1,c2,d) e exp]]

            Detach, 159, 162

 

        

         Prove: ALL(c1):ALL(c2):ALL(d):[(c1,c2,d) e exp => c1 e n & c2 e n & d e n]

        

         Suppose...

 

            164  (x,y,z) e exp

                  Premise

 

            165  ALL(b):ALL(c):[(x,b,c) e exp => x e n & b e n & c e n & (x,b,c) e n3]

                  U Spec, 44

 

            166  ALL(c):[(x,y,c) e exp => x e n & y e n & c e n & (x,y,c) e n3]

                  U Spec, 165

 

            167  (x,y,z) e exp => x e n & y e n & z e n & (x,y,z) e n3

                  U Spec, 166

 

            168  x e n & y e n & z e n & (x,y,z) e n3

                  Detach, 167, 164

 

            169  x e n

                  Split, 168

 

            170  y e n

                  Split, 168

 

            171  z e n

                  Split, 168

 

            172  (x,y,z) e n3

                  Split, 168

 

            173  x e n & y e n

                  Join, 169, 170

 

            174  x e n & y e n & z e n

                  Join, 173, 171

 

    Functionality - Part 1

 

      175  ALL(c1):ALL(c2):ALL(d):[(c1,c2,d) e exp => c1 e n & c2 e n & d e n]

            4 Conclusion, 164

 

   

    Prove: ALL(a):[a e n

           => [~a=0

           => ALL(b):[b e n => EXIST(c):[c e n & (a,b,c) e exp]]]]  (by induction)

   

    Apply Subset Axiom

 

      176  EXIST(sub):[Set(sub) & ALL(b):[b e sub <=> b e n & EXIST(c):[c e n & (0,b,c) e exp]]]

            Subset, 2

 

      177  Set(p) & ALL(b):[b e p <=> b e n & EXIST(c):[c e n & (0,b,c) e exp]]

            E Spec, 176

 

    Define: p

 

      178  Set(p)

            Split, 177

 

      179  ALL(b):[b e p <=> b e n & EXIST(c):[c e n & (0,b,c) e exp]]

            Split, 177

 

    Apply Induction Axiom (given)

 

      180  Set(p) & ALL(b):[b e p => b e n]

         => [0 e p & ALL(b):[b e p => b+1 e p]

         => ALL(b):[b e n => b e p]]

            U Spec, 6

 

            181  x e p

                  Premise

 

            182  x e p <=> x e n & EXIST(c):[c e n & (0,x,c) e exp]

                  U Spec, 179

 

            183  [x e p => x e n & EXIST(c):[c e n & (0,x,c) e exp]]

             & [x e n & EXIST(c):[c e n & (0,x,c) e exp] => x e p]

                  Iff-And, 182

 

            184  x e p => x e n & EXIST(c):[c e n & (0,x,c) e exp]

                  Split, 183

 

            185  x e n & EXIST(c):[c e n & (0,x,c) e exp] => x e p

                  Split, 183

 

            186  x e n & EXIST(c):[c e n & (0,x,c) e exp]

                  Detach, 184, 181

 

            187  x e n

                  Split, 186

 

      188  ALL(b):[b e p => b e n]

            4 Conclusion, 181

 

      189  Set(p) & ALL(b):[b e p => b e n]

            Join, 178, 188

 

    Sufficient: For ALL(b):[b e n => b e p]

 

      190  0 e p & ALL(b):[b e p => b+1 e p]

         => ALL(b):[b e n => b e p]

            Detach, 180, 189

 

    Base case

    *********

   

    Prove: 0 e p

 

      191  0 e p <=> 0 e n & EXIST(c):[c e n & (0,0,c) e exp]

            U Spec, 179

 

      192  [0 e p => 0 e n & EXIST(c):[c e n & (0,0,c) e exp]]

         & [0 e n & EXIST(c):[c e n & (0,0,c) e exp] => 0 e p]

            Iff-And, 191

 

      193  0 e p => 0 e n & EXIST(c):[c e n & (0,0,c) e exp]

            Split, 192

 

    Sufficient:

 

      194  0 e n & EXIST(c):[c e n & (0,0,c) e exp] => 0 e p

            Split, 192

 

      195  x0 e n & (0,0,x0) e exp

            Join, 11, 66

 

      196  EXIST(c):[c e n & (0,0,c) e exp]

            E Gen, 195

 

      197  0 e n & EXIST(c):[c e n & (0,0,c) e exp]

            Join, 3, 196

 

    As Required:

 

      198  0 e p

            Detach, 194, 197

 

        

         Inductive Step

         **************

        

         Suppose...

 

            199  x e p

                  Premise

 

            200  x e p <=> x e n & EXIST(c):[c e n & (0,x,c) e exp]

                  U Spec, 179

 

            201  [x e p => x e n & EXIST(c):[c e n & (0,x,c) e exp]]

             & [x e n & EXIST(c):[c e n & (0,x,c) e exp] => x e p]

                  Iff-And, 200

 

            202  x e p => x e n & EXIST(c):[c e n & (0,x,c) e exp]

                  Split, 201

 

            203  x e n & EXIST(c):[c e n & (0,x,c) e exp] => x e p

                  Split, 201

 

            204  x e n & EXIST(c):[c e n & (0,x,c) e exp]

                  Detach, 202, 199

 

            205  x e n

                  Split, 204

 

            206  EXIST(c):[c e n & (0,x,c) e exp]

                  Split, 204

 

            207  y e n & (0,x,y) e exp

                  E Spec, 206

 

            208  y e n

                  Split, 207

 

            209  (0,x,y) e exp

                  Split, 207

 

            210  x+1 e p <=> x+1 e n & EXIST(c):[c e n & (0,x+1,c) e exp]

                  U Spec, 179

 

            211  [x+1 e p => x+1 e n & EXIST(c):[c e n & (0,x+1,c) e exp]]

             & [x+1 e n & EXIST(c):[c e n & (0,x+1,c) e exp] => x+1 e p]

                  Iff-And, 210

 

            212  x+1 e p => x+1 e n & EXIST(c):[c e n & (0,x+1,c) e exp]

                  Split, 211

 

         Sufficient:

 

            213  x+1 e n & EXIST(c):[c e n & (0,x+1,c) e exp] => x+1 e p

                  Split, 211

 

            214  ALL(b):[x e n & b e n => x+b e n]

                  U Spec, 9

 

            215  x e n & 1 e n => x+1 e n

                  U Spec, 214

 

            216  x e n & 1 e n

                  Join, 205, 7

 

            217  x+1 e n

                  Detach, 215, 216

 

            218  ALL(b):ALL(c):[(0,b,c) e exp => (0,b+1,c*0) e exp]

                  U Spec, 155

 

            219  ALL(c):[(0,x,c) e exp => (0,x+1,c*0) e exp]

                  U Spec, 218

 

            220  (0,x,y) e exp => (0,x+1,y*0) e exp

                  U Spec, 219

 

            221  (0,x+1,y*0) e exp

                  Detach, 220, 209

 

            222  ALL(b):[y e n & b e n => y*b e n]

                  U Spec, 10

 

            223  y e n & 0 e n => y*0 e n

                  U Spec, 222

 

            224  y e n & 0 e n

                  Join, 208, 3

 

            225  y*0 e n

                  Detach, 223, 224

 

            226  y*0 e n & (0,x+1,y*0) e exp

                  Join, 225, 221

 

            227  EXIST(c):[c e n & (0,x+1,c) e exp]

                  E Gen, 226

 

            228  x+1 e n & EXIST(c):[c e n & (0,x+1,c) e exp]

                  Join, 217, 227

 

            229  x+1 e p

                  Detach, 213, 228

 

    As Required:

 

      230  ALL(b):[b e p => b+1 e p]

            4 Conclusion, 199

 

      231  0 e p & ALL(b):[b e p => b+1 e p]

            Join, 198, 230

 

    As Required:

 

      232  ALL(b):[b e n => b e p]

            Detach, 190, 231

 

        

         Prove: ALL(b):[b e n => EXIST(c):[c e n & (0,b,c) e exp]]

        

         Suppose...

 

            233  x e n

                  Premise

 

            234  x e n => x e p

                  U Spec, 232

 

            235  x e p

                  Detach, 234, 233

 

            236  x e p <=> x e n & EXIST(c):[c e n & (0,x,c) e exp]

                  U Spec, 179

 

            237  [x e p => x e n & EXIST(c):[c e n & (0,x,c) e exp]]

             & [x e n & EXIST(c):[c e n & (0,x,c) e exp] => x e p]

                  Iff-And, 236

 

            238  x e p => x e n & EXIST(c):[c e n & (0,x,c) e exp]

                  Split, 237

 

            239  x e n & EXIST(c):[c e n & (0,x,c) e exp] => x e p

                  Split, 237

 

            240  x e n & EXIST(c):[c e n & (0,x,c) e exp]

                  Detach, 238, 235

 

            241  x e n

                  Split, 240

 

            242  EXIST(c):[c e n & (0,x,c) e exp]

                  Split, 240

 

    As Required:

 

      243  ALL(b):[b e n => EXIST(c):[c e n & (0,b,c) e exp]]

            4 Conclusion, 233

 

        

         Prove: ALL(a):[a e n

                => [~a=0

                => ALL(b):[b e n => EXIST(c):[c e n & (a,b,c) e exp]]]]

        

         Suppose...

 

            244  x e n

                  Premise

 

            

             Prove: ~x=0

                    => ALL(b):[b e n => EXIST(c):[c e n & (x,b,c) e exp]]

            

             Suppose...

 

                  245  ~x=0

                        Premise

 

                  246  EXIST(sub):[Set(sub) & ALL(b):[b e sub <=> b e n & EXIST(c):[c e n & (x,b,c) e exp]]]

                        Subset, 2

 

                  247  Set(p2) & ALL(b):[b e p2 <=> b e n & EXIST(c):[c e n & (x,b,c) e exp]]

                        E Spec, 246

 

             Define: p2

 

                  248  Set(p2)

                        Split, 247

 

                  249  ALL(b):[b e p2 <=> b e n & EXIST(c):[c e n & (x,b,c) e exp]]

                        Split, 247

 

                  250  Set(p2) & ALL(b):[b e p2 => b e n]

                 => [0 e p2 & ALL(b):[b e p2 => b+1 e p2]

                 => ALL(b):[b e n => b e p2]]

                        U Spec, 6

 

                        251  y e p2

                              Premise

 

                        252  y e p2 <=> y e n & EXIST(c):[c e n & (x,y,c) e exp]

                              U Spec, 249

 

                        253  [y e p2 => y e n & EXIST(c):[c e n & (x,y,c) e exp]]

                      & [y e n & EXIST(c):[c e n & (x,y,c) e exp] => y e p2]

                              Iff-And, 252

 

                        254  y e p2 => y e n & EXIST(c):[c e n & (x,y,c) e exp]

                              Split, 253

 

                        255  y e n & EXIST(c):[c e n & (x,y,c) e exp] => y e p2

                              Split, 253

 

                        256  y e n & EXIST(c):[c e n & (x,y,c) e exp]

                              Detach, 254, 251

 

                        257  y e n

                              Split, 256

 

                  258  ALL(b):[b e p2 => b e n]

                        4 Conclusion, 251

 

                  259  Set(p2) & ALL(b):[b e p2 => b e n]

                        Join, 248, 258

 

             Sufficient:

 

                  260  0 e p2 & ALL(b):[b e p2 => b+1 e p2]

                 => ALL(b):[b e n => b e p2]

                        Detach, 250, 259

 

                  261  0 e p2 <=> 0 e n & EXIST(c):[c e n & (x,0,c) e exp]

                        U Spec, 249

 

                  262  [0 e p2 => 0 e n & EXIST(c):[c e n & (x,0,c) e exp]]

                 & [0 e n & EXIST(c):[c e n & (x,0,c) e exp] => 0 e p2]

                        Iff-And, 261

 

                  263  0 e p2 => 0 e n & EXIST(c):[c e n & (x,0,c) e exp]

                        Split, 262

 

             Sufficient:

 

                  264  0 e n & EXIST(c):[c e n & (x,0,c) e exp] => 0 e p2

                        Split, 262

 

                  265  x e n => [~x=0 => (x,0,1) e exp]

                        U Spec, 97

 

                  266  ~x=0 => (x,0,1) e exp

                        Detach, 265, 244

 

                  267  (x,0,1) e exp

                        Detach, 266, 245

 

                  268  1 e n & (x,0,1) e exp

                        Join, 7, 267

 

                  269  EXIST(c):[c e n & (x,0,c) e exp]

                        E Gen, 268

 

                  270  0 e n & EXIST(c):[c e n & (x,0,c) e exp]

                        Join, 3, 269

 

                  271  0 e p2

                        Detach, 264, 270

 

                

                 Suppose...

 

                        272  y e p2

                              Premise

 

                        273  y e p2 <=> y e n & EXIST(c):[c e n & (x,y,c) e exp]

                              U Spec, 249

 

                        274  [y e p2 => y e n & EXIST(c):[c e n & (x,y,c) e exp]]

                      & [y e n & EXIST(c):[c e n & (x,y,c) e exp] => y e p2]

                              Iff-And, 273

 

                        275  y e p2 => y e n & EXIST(c):[c e n & (x,y,c) e exp]

                              Split, 274

 

                        276  y e n & EXIST(c):[c e n & (x,y,c) e exp] => y e p2

                              Split, 274

 

                        277  y e n & EXIST(c):[c e n & (x,y,c) e exp]

                              Detach, 275, 272

 

                        278  y e n

                              Split, 277

 

                        279  EXIST(c):[c e n & (x,y,c) e exp]

                              Split, 277

 

                        280  z e n & (x,y,z) e exp

                              E Spec, 279

 

                        281  z e n

                              Split, 280

 

                        282  (x,y,z) e exp

                              Split, 280

 

                        283  y+1 e p2 <=> y+1 e n & EXIST(c):[c e n & (x,y+1,c) e exp]

                              U Spec, 249

 

                        284  [y+1 e p2 => y+1 e n & EXIST(c):[c e n & (x,y+1,c) e exp]]

                      & [y+1 e n & EXIST(c):[c e n & (x,y+1,c) e exp] => y+1 e p2]

                              Iff-And, 283

 

                        285  y+1 e p2 => y+1 e n & EXIST(c):[c e n & (x,y+1,c) e exp]

                              Split, 284

 

                 Sufficient:

 

                        286  y+1 e n & EXIST(c):[c e n & (x,y+1,c) e exp] => y+1 e p2

                              Split, 284

 

                        287  ALL(b):[y e n & b e n => y+b e n]

                              U Spec, 9

 

                        288  y e n & 1 e n => y+1 e n

                              U Spec, 287

 

                        289  y e n & 1 e n

                              Join, 278, 7

 

                        290  y+1 e n

                              Detach, 288, 289

 

                        291  ALL(b):ALL(c):[(x,b,c) e exp => (x,b+1,c*x) e exp]

                              U Spec, 155

 

                        292  ALL(c):[(x,y,c) e exp => (x,y+1,c*x) e exp]

                              U Spec, 291

 

                        293  (x,y,z) e exp => (x,y+1,z*x) e exp

                              U Spec, 292

 

                        294  (x,y+1,z*x) e exp

                              Detach, 293, 282

 

                        295  ALL(b):[z e n & b e n => z*b e n]

                              U Spec, 10

 

                        296  z e n & x e n => z*x e n

                              U Spec, 295

 

                        297  z e n & x e n

                              Join, 281, 244

 

                        298  z*x e n

                              Detach, 296, 297

 

                        299  z*x e n & (x,y+1,z*x) e exp

                              Join, 298, 294

 

                        300  EXIST(c):[c e n & (x,y+1,c) e exp]

                              E Gen, 299

 

                        301  y+1 e n & EXIST(c):[c e n & (x,y+1,c) e exp]

                              Join, 290, 300

 

                        302  y+1 e p2

                              Detach, 286, 301

 

             As Required:

 

                  303  ALL(b):[b e p2 => b+1 e p2]

                        4 Conclusion, 272

 

                  304  0 e p2 & ALL(b):[b e p2 => b+1 e p2]

                        Join, 271, 303

 

             As Required:

 

                  305  ALL(b):[b e n => b e p2]

                        Detach, 260, 304

 

                        306  y e n

                              Premise

 

                        307  y e n => y e p2

                              U Spec, 305

 

                        308  y e p2

                              Detach, 307, 306

 

                        309  y e p2 <=> y e n & EXIST(c):[c e n & (x,y,c) e exp]

                              U Spec, 249

 

                        310  [y e p2 => y e n & EXIST(c):[c e n & (x,y,c) e exp]]

                      & [y e n & EXIST(c):[c e n & (x,y,c) e exp] => y e p2]

                              Iff-And, 309

 

                        311  y e p2 => y e n & EXIST(c):[c e n & (x,y,c) e exp]

                              Split, 310

 

                        312  y e n & EXIST(c):[c e n & (x,y,c) e exp] => y e p2

                              Split, 310

 

                        313  y e n & EXIST(c):[c e n & (x,y,c) e exp]

                              Detach, 311, 308

 

                        314  y e n

                              Split, 313

 

                        315  EXIST(c):[c e n & (x,y,c) e exp]

                              Split, 313

 

             As Required:

 

                  316  ALL(b):[b e n => EXIST(c):[c e n & (x,b,c) e exp]]

                        4 Conclusion, 306

 

         As Required:

 

            317  ~x=0

             => ALL(b):[b e n => EXIST(c):[c e n & (x,b,c) e exp]]

                  4 Conclusion, 245

 

    As Required:

 

      318  ALL(a):[a e n

         => [~a=0

         => ALL(b):[b e n => EXIST(c):[c e n & (a,b,c) e exp]]]]

            4 Conclusion, 244

 

            319  x e n & y e n

                  Premise

 

            320  x e n

                  Split, 319

 

            321  y e n

                  Split, 319

 

         Two cases:

 

            322  x=0 | ~x=0

                  Or Not

 

                  323  x=0

                        Premise

 

                  324  y e n => EXIST(c):[c e n & (0,y,c) e exp]

                        U Spec, 243

 

                  325  EXIST(c):[c e n & (0,y,c) e exp]

                        Detach, 324, 321

 

                  326  EXIST(c):[c e n & (x,y,c) e exp]

                        Substitute, 323, 325

 

            327  x=0 => EXIST(c):[c e n & (x,y,c) e exp]

                  4 Conclusion, 323

 

                  328  ~x=0

                        Premise

 

                  329  x e n

                 => [~x=0

                 => ALL(b):[b e n => EXIST(c):[c e n & (x,b,c) e exp]]]

                        U Spec, 318

 

                  330  ~x=0

                 => ALL(b):[b e n => EXIST(c):[c e n & (x,b,c) e exp]]

                        Detach, 329, 320

 

                  331  ALL(b):[b e n => EXIST(c):[c e n & (x,b,c) e exp]]

                        Detach, 330, 328

 

                  332  y e n => EXIST(c):[c e n & (x,y,c) e exp]

                        U Spec, 331

 

                  333  EXIST(c):[c e n & (x,y,c) e exp]

                        Detach, 332, 321

 

            334  ~x=0 => EXIST(c):[c e n & (x,y,c) e exp]

                  4 Conclusion, 328

 

            335  [x=0 => EXIST(c):[c e n & (x,y,c) e exp]]

             & [~x=0 => EXIST(c):[c e n & (x,y,c) e exp]]

                  Join, 327, 334

 

            336  EXIST(c):[c e n & (x,y,c) e exp]

                  Cases, 322, 335

 

    Functionality - Part 2

 

      337  ALL(a):ALL(b):[a e n & b e n => EXIST(c):[c e n & (a,b,c) e exp]]

            4 Conclusion, 319

 

            338  z e n

                  Premise

 

            

             Suppose...

 

                  339  ~[(0,0,z) e exp => z=x0]

                        Premise

 

                  340  ~~[(0,0,z) e exp & ~z=x0]

                        Imply-And, 339

 

                  341  (0,0,z) e exp & ~z=x0

                        Rem DNeg, 340

 

                  342  (0,0,z) e exp

                        Split, 341

 

                  343  ~z=x0

                        Split, 341

 

                  344  ALL(b):ALL(c):[(0,b,c) e exp

                 <=> (0,b,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (0,b,c) e d]]]

                        U Spec, 25

 

                  345  ALL(c):[(0,0,c) e exp

                 <=> (0,0,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (0,0,c) e d]]]

                        U Spec, 344

 

                  346  (0,0,z) e exp

                 <=> (0,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (0,0,z) e d]]

                        U Spec, 345

 

                  347  [(0,0,z) e exp => (0,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (0,0,z) e d]]]

                 & [(0,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (0,0,z) e d]] => (0,0,z) e exp]

                        Iff-And, 346

 

                  348  (0,0,z) e exp => (0,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (0,0,z) e d]]

                        Split, 347

 

                  349  (0,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (0,0,z) e d]] => (0,0,z) e exp

                        Split, 347

 

                  350  ~[(0,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 => (0,0,z) e d]]] => ~(0,0,z) e exp

                        Contra, 348

 

                  351  ~[(0,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => ~[(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(0,0,z) e d]]] => ~(0,0,z) e exp

                        Imply-And, 350

 

                  352  ~~[~(0,0,z) e n3 | ~ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => ~[(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(0,0,z) e d]]] => ~(0,0,z) e exp

                        DeMorgan, 351

 

                  353  ~(0,0,z) e n3 | ~ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => ~[(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(0,0,z) e d]] => ~(0,0,z) e exp

                        Rem DNeg, 352

 

                  354  ~(0,0,z) e n3 | ~~EXIST(d):~[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => ~[(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(0,0,z) e d]] => ~(0,0,z) e exp

                        Quant, 353

 

                  355  ~(0,0,z) e n3 | EXIST(d):~[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 => ~[(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(0,0,z) e d]] => ~(0,0,z) e exp

                        Rem DNeg, 354

 

                  356  ~(0,0,z) e n3 | EXIST(d):~~[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n] & ~~[(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(0,0,z) e d]] => ~(0,0,z) e exp

                        Imply-And, 355

 

                  357  ~(0,0,z) e n3 | EXIST(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n] & ~~[(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(0,0,z) e d]] => ~(0,0,z) e exp

                        Rem DNeg, 356

 

             Sufficient: For ~(0,0,z) e exp (to obtain a contradiction using d=q, as defined below)

            

             See line 157 of InfinitelyManyPowFunctions.htm

 

                  358  ~(0,0,z) e n3 | EXIST(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n] & [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(0,0,z) e d]] => ~(0,0,z) e exp

                        Rem DNeg, 357

 

                  359  EXIST(sub):[Set''(sub) & ALL(a):ALL(b):ALL(c):[(a,b,c) e sub

                 <=> (a,b,c) e exp & ~[a=0 & b=0 & c=z]]]

                        Subset, 24

 

                  360  Set''(q) & ALL(a):ALL(b):ALL(c):[(a,b,c) e q

                 <=> (a,b,c) e exp & ~[a=0 & b=0 & c=z]]

                        E Spec, 359

 

            

             Define: q   (q = exp - (0,0,z))

 

                  361  Set''(q)

                        Split, 360

 

                  362  ALL(a):ALL(b):ALL(c):[(a,b,c) e q

                 <=> (a,b,c) e exp & ~[a=0 & b=0 & c=z]]

                        Split, 360

 

                

                 Suppose...

 

                        363  (t,u,v) e q

                              Premise

 

                        364  ALL(b):ALL(c):[(t,b,c) e q

                      <=> (t,b,c) e exp & ~[t=0 & b=0 & c=z]]

                              U Spec, 362

 

                        365  ALL(c):[(t,u,c) e q

                      <=> (t,u,c) e exp & ~[t=0 & u=0 & c=z]]

                              U Spec, 364

 

                        366  (t,u,v) e q

                      <=> (t,u,v) e exp & ~[t=0 & u=0 & v=z]

                              U Spec, 365

 

                        367  [(t,u,v) e q => (t,u,v) e exp & ~[t=0 & u=0 & v=z]]

                      & [(t,u,v) e exp & ~[t=0 & u=0 & v=z] => (t,u,v) e q]

                              Iff-And, 366

 

                        368  (t,u,v) e q => (t,u,v) e exp & ~[t=0 & u=0 & v=z]

                              Split, 367

 

                        369  (t,u,v) e exp & ~[t=0 & u=0 & v=z] => (t,u,v) e q

                              Split, 367

 

                        370  (t,u,v) e exp & ~[t=0 & u=0 & v=z]

                              Detach, 368, 363

 

                        371  (t,u,v) e exp

                              Split, 370

 

                        372  ~[t=0 & u=0 & v=z]

                              Split, 370

 

                        373  ALL(b):ALL(c):[(t,b,c) e exp => t e n & b e n & c e n & (t,b,c) e n3]

                              U Spec, 44

 

                        374  ALL(c):[(t,u,c) e exp => t e n & u e n & c e n & (t,u,c) e n3]

                              U Spec, 373

 

                        375  (t,u,v) e exp => t e n & u e n & v e n & (t,u,v) e n3

                              U Spec, 374

 

                        376  t e n & u e n & v e n & (t,u,v) e n3

                              Detach, 375, 371

 

                        377  t e n

                              Split, 376

 

                        378  u e n

                              Split, 376

 

                        379  v e n

                              Split, 376

 

                        380  (t,u,v) e n3

                              Split, 376

 

                        381  t e n & u e n

                              Join, 377, 378

 

                        382  t e n & u e n & v e n

                              Join, 381, 379

 

            

             As Required:

 

                  383  ALL(e):ALL(f):ALL(g):[(e,f,g) e q => e e n & f e n & g e n]

                        4 Conclusion, 363

 

                  384  ALL(b):ALL(c):[(0,b,c) e q

                 <=> (0,b,c) e exp & ~[0=0 & b=0 & c=z]]

                        U Spec, 362

 

                  385  ALL(c):[(0,0,c) e q

                 <=> (0,0,c) e exp & ~[0=0 & 0=0 & c=z]]

                        U Spec, 384

 

                  386  (0,0,x0) e q

                 <=> (0,0,x0) e exp & ~[0=0 & 0=0 & x0=z]

                        U Spec, 385

 

                  387  [(0,0,x0) e q => (0,0,x0) e exp & ~[0=0 & 0=0 & x0=z]]

                 & [(0,0,x0) e exp & ~[0=0 & 0=0 & x0=z] => (0,0,x0) e q]

                        Iff-And, 386

 

                  388  (0,0,x0) e q => (0,0,x0) e exp & ~[0=0 & 0=0 & x0=z]

                        Split, 387

 

             Sufficient:

 

                  389  (0,0,x0) e exp & ~[0=0 & 0=0 & x0=z] => (0,0,x0) e q

                        Split, 387

 

                        390  0=0 & 0=0 & x0=z

                              Premise

 

                        391  0=0

                              Split, 390

 

                        392  0=0

                              Split, 390

 

                        393  x0=z

                              Split, 390

 

                        394  z=x0

                              Sym, 393

 

                        395  z=x0 & ~z=x0

                              Join, 394, 343

 

                  396  ~[0=0 & 0=0 & x0=z]

                        4 Conclusion, 390

 

                  397  (0,0,x0) e exp & ~[0=0 & 0=0 & x0=z]

                        Join, 66, 396

 

             As Required:

 

                  398  (0,0,x0) e q

                        Detach, 389, 397

 

                        399  t e n

                              Premise

 

                              400  ~t=0

                                    Premise

 

                              401  ALL(b):ALL(c):[(t,b,c) e q

                          <=> (t,b,c) e exp & ~[t=0 & b=0 & c=z]]

                                    U Spec, 362

 

                              402  ALL(c):[(t,0,c) e q

                          <=> (t,0,c) e exp & ~[t=0 & 0=0 & c=z]]

                                    U Spec, 401

 

                              403  (t,0,1) e q

                          <=> (t,0,1) e exp & ~[t=0 & 0=0 & 1=z]

                                    U Spec, 402

 

                              404  [(t,0,1) e q => (t,0,1) e exp & ~[t=0 & 0=0 & 1=z]]

                          & [(t,0,1) e exp & ~[t=0 & 0=0 & 1=z] => (t,0,1) e q]

                                    Iff-And, 403

 

                              405  (t,0,1) e q => (t,0,1) e exp & ~[t=0 & 0=0 & 1=z]

                                    Split, 404

 

                      Sufficient:

 

                              406  (t,0,1) e exp & ~[t=0 & 0=0 & 1=z] => (t,0,1) e q

                                    Split, 404

 

                              407  t e n => [~t=0 => (t,0,1) e exp]

                                    U Spec, 97

 

                              408  ~t=0 => (t,0,1) e exp

                                    Detach, 407, 399

 

                              409  (t,0,1) e exp

                                    Detach, 408, 400

 

                                    410  t=0 & 0=0 & 1=z

                                          Premise

 

                                    411  t=0

                                          Split, 410

 

                                    412  0=0

                                          Split, 410

 

                                    413  1=z

                                          Split, 410

 

                                    414  t=0 & ~t=0

                                          Join, 411, 400

 

                              415  ~[t=0 & 0=0 & 1=z]

                                    4 Conclusion, 410

 

                              416  (t,0,1) e exp & ~[t=0 & 0=0 & 1=z]

                                    Join, 409, 415

 

                              417  (t,0,1) e q

                                    Detach, 406, 416

 

                        418  ~t=0 => (t,0,1) e q

                              4 Conclusion, 400

 

             As Required:

 

                  419  ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                        4 Conclusion, 399

 

                        420  (t,u,v) e q

                              Premise

 

                        421  ALL(b):ALL(c):[(t,b,c) e q

                      <=> (t,b,c) e exp & ~[t=0 & b=0 & c=z]]

                              U Spec, 362

 

                        422  ALL(c):[(t,u,c) e q

                      <=> (t,u,c) e exp & ~[t=0 & u=0 & c=z]]

                              U Spec, 421

 

                        423  (t,u,v) e q

                      <=> (t,u,v) e exp & ~[t=0 & u=0 & v=z]

                              U Spec, 422

 

                        424  [(t,u,v) e q => (t,u,v) e exp & ~[t=0 & u=0 & v=z]]

                      & [(t,u,v) e exp & ~[t=0 & u=0 & v=z] => (t,u,v) e q]

                              Iff-And, 423

 

                        425  (t,u,v) e q => (t,u,v) e exp & ~[t=0 & u=0 & v=z]

                              Split, 424

 

                        426  (t,u,v) e exp & ~[t=0 & u=0 & v=z] => (t,u,v) e q

                              Split, 424

 

                        427  (t,u,v) e exp & ~[t=0 & u=0 & v=z]

                              Detach, 425, 420

 

                        428  (t,u,v) e exp

                              Split, 427

 

                        429  ~[t=0 & u=0 & v=z]

                              Split, 427

 

                        430  ALL(b):ALL(c):[(t,b,c) e q

                      <=> (t,b,c) e exp & ~[t=0 & b=0 & c=z]]

                              U Spec, 362

 

                        431  ALL(c):[(t,u+1,c) e q

                      <=> (t,u+1,c) e exp & ~[t=0 & u+1=0 & c=z]]

                              U Spec, 430

 

                        432  (t,u+1,v*t) e q

                      <=> (t,u+1,v*t) e exp & ~[t=0 & u+1=0 & v*t=z]

                              U Spec, 431

 

                        433  [(t,u+1,v*t) e q => (t,u+1,v*t) e exp & ~[t=0 & u+1=0 & v*t=z]]

                      & [(t,u+1,v*t) e exp & ~[t=0 & u+1=0 & v*t=z] => (t,u+1,v*t) e q]

                              Iff-And, 432

 

                        434  (t,u+1,v*t) e q => (t,u+1,v*t) e exp & ~[t=0 & u+1=0 & v*t=z]

                              Split, 433

 

                 Sufficient:

 

                        435  (t,u+1,v*t) e exp & ~[t=0 & u+1=0 & v*t=z] => (t,u+1,v*t) e q

                              Split, 433

 

                        436  ALL(b):ALL(c):[(t,b,c) e exp => (t,b+1,c*t) e exp]

                              U Spec, 155

 

                        437  ALL(c):[(t,u,c) e exp => (t,u+1,c*t) e exp]

                              U Spec, 436

 

                        438  (t,u,v) e exp => (t,u+1,v*t) e exp

                              U Spec, 437

 

                        439  (t,u+1,v*t) e exp

                              Detach, 438, 428

 

                              440  t=0 & u+1=0 & v*t=z

                                    Premise

 

                              441  t=0

                                    Split, 440

 

                              442  u+1=0

                                    Split, 440

 

                              443  v*t=z

                                    Split, 440

 

                              444  u e n => ~u+1=0

                                    U Spec, 5

 

                              445  ALL(b):ALL(c):[(t,b,c) e exp => t e n & b e n & c e n & (t,b,c) e n3]

                                    U Spec, 44

 

                              446  ALL(c):[(t,u,c) e exp => t e n & u e n & c e n & (t,u,c) e n3]

                                    U Spec, 445

 

                              447  (t,u,v) e exp => t e n & u e n & v e n & (t,u,v) e n3

                                    U Spec, 446

 

                              448  t e n & u e n & v e n & (t,u,v) e n3

                                    Detach, 447, 428

 

                              449  t e n

                                    Split, 448

 

                              450  u e n

                                    Split, 448

 

                              451  v e n

                                    Split, 448

 

                              452  (t,u,v) e n3

                                    Split, 448

 

                              453  ~u+1=0

                                    Detach, 444, 450

 

                              454  u+1=0 & ~u+1=0

                                    Join, 442, 453

 

                        455  ~[t=0 & u+1=0 & v*t=z]

                              4 Conclusion, 440

 

                        456  (t,u+1,v*t) e exp & ~[t=0 & u+1=0 & v*t=z]

                              Join, 439, 455

 

                        457  (t,u+1,v*t) e q

                              Detach, 435, 456

 

             As Required:

 

                  458  ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                        4 Conclusion, 420

 

                  459  ALL(b):ALL(c):[(0,b,c) e q

                 <=> (0,b,c) e exp & ~[0=0 & b=0 & c=z]]

                        U Spec, 362

 

                  460  ALL(c):[(0,0,c) e q

                 <=> (0,0,c) e exp & ~[0=0 & 0=0 & c=z]]

                        U Spec, 459

 

                  461  (0,0,z) e q

                 <=> (0,0,z) e exp & ~[0=0 & 0=0 & z=z]

                        U Spec, 460

 

                  462  [(0,0,z) e q => (0,0,z) e exp & ~[0=0 & 0=0 & z=z]]

                 & [(0,0,z) e exp & ~[0=0 & 0=0 & z=z] => (0,0,z) e q]

                        Iff-And, 461

 

                  463  (0,0,z) e q => (0,0,z) e exp & ~[0=0 & 0=0 & z=z]

                        Split, 462

 

                  464  (0,0,z) e exp & ~[0=0 & 0=0 & z=z] => (0,0,z) e q

                        Split, 462

 

                  465  ~[(0,0,z) e exp & ~[0=0 & 0=0 & z=z]] => ~(0,0,z) e q

                        Contra, 463

 

                  466  ~~[~(0,0,z) e exp | ~~[0=0 & 0=0 & z=z]] => ~(0,0,z) e q

                        DeMorgan, 465

 

                  467  ~(0,0,z) e exp | ~~[0=0 & 0=0 & z=z] => ~(0,0,z) e q

                        Rem DNeg, 466

 

                  468  ~(0,0,z) e exp | 0=0 & 0=0 & z=z => ~(0,0,z) e q

                        Rem DNeg, 467

 

                  469  0=0

                        Reflex

 

                  470  z=z

                        Reflex

 

                  471  0=0 & 0=0

                        Join, 469, 469

 

                  472  0=0 & 0=0 & z=z

                        Join, 471, 470

 

                  473  ~(0,0,z) e exp | 0=0 & 0=0 & z=z

                        Arb Or, 472

 

             As Required:

 

                  474  ~(0,0,z) e q

                        Detach, 468, 473

 

                  475  Set''(q)

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => e e n & f e n & g e n]

                        Join, 361, 383

 

                  476  (0,0,x0) e q

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                        Join, 398, 419

 

                  477  (0,0,x0) e q

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                        Join, 476, 458

 

                  478  (0,0,x0) e q

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                 & ~(0,0,z) e q

                        Join, 477, 474

 

                  479  Set''(q)

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => e e n & f e n & g e n]

                 & [(0,0,x0) e q

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                 & ~(0,0,z) e q]

                        Join, 475, 478

 

                  480  EXIST(d):[Set''(d)

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 & [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 & ~(0,0,z) e d]]

                        E Gen, 479

 

                  481  ~(0,0,z) e n3 | EXIST(d):[Set''(d)

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                 & [(0,0,x0) e d

                 & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                 & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                 & ~(0,0,z) e d]]

                        Arb Or, 480

 

                  482  ~(0,0,z) e exp

                        Detach, 358, 481

 

                  483  (0,0,z) e exp & ~(0,0,z) e exp

                        Join, 342, 482

 

         As Required:

 

            484  ~~[(0,0,z) e exp => z=x0]

                  4 Conclusion, 339

 

            485  (0,0,z) e exp => z=x0

                  Rem DNeg, 484

 

    As Required:

 

      486  ALL(a):[a e n => [(0,0,a) e exp => a=x0]]

            4 Conclusion, 338

 

        

         Suppose...

 

            487  t e n

                  Premise

 

                  488  ~t=0

                        Premise

 

                

                 Suppose to the contrary...

 

                        489  ~[(t,0,z) e exp => z=1]

                              Premise

 

                        490  ~~[(t,0,z) e exp & ~z=1]

                              Imply-And, 489

 

                        491  (t,0,z) e exp & ~z=1

                              Rem DNeg, 490

 

                        492  (t,0,z) e exp

                              Split, 491

 

                        493  ~z=1

                              Split, 491

 

                        494  ALL(b):ALL(c):[(t,b,c) e exp

                      <=> (t,b,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,b,c) e d]]]

                              U Spec, 25

 

                        495  ALL(c):[(t,0,c) e exp

                      <=> (t,0,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,0,c) e d]]]

                              U Spec, 494

 

                        496  (t,0,z) e exp

                      <=> (t,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                     => (t,0,z) e d]]

                              U Spec, 495

 

                        497  [(t,0,z) e exp => (t,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,0,z) e d]]]

                      & [(t,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,0,z) e d]] => (t,0,z) e exp]

                              Iff-And, 496

 

                        498  (t,0,z) e exp => (t,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,0,z) e d]]

                              Split, 497

 

                        499  (t,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,0,z) e d]] => (t,0,z) e exp

                              Split, 497

 

                        500  ~[(t,0,z) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,0,z) e d]]] => ~(t,0,z) e exp

                              Contra, 498

 

                        501  ~~[~(t,0,z) e n3 | ~ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,0,z) e d]]] => ~(t,0,z) e exp

                              DeMorgan, 500

 

                        502  ~(t,0,z) e n3 | ~ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                     => (t,0,z) e d]] => ~(t,0,z) e exp

                              Rem DNeg, 501

 

                        503  ~(t,0,z) e n3 | ~~EXIST(d):~[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,0,z) e d]] => ~(t,0,z) e exp

                              Quant, 502

 

                        504  ~(t,0,z) e n3 | EXIST(d):~[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      => [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,0,z) e d]] => ~(t,0,z) e exp

                              Rem DNeg, 503

 

                        505  ~(t,0,z) e n3 | EXIST(d):~~[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n] & ~[(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,0,z) e d]] => ~(t,0,z) e exp

                              Imply-And, 504

 

                        506  ~(t,0,z) e n3 | EXIST(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n] & ~[(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      => (t,0,z) e d]] => ~(t,0,z) e exp

                              Rem DNeg, 505

 

                        507  ~(t,0,z) e n3 | EXIST(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n] & ~~[(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(t,0,z) e d]] => ~(t,0,z) e exp

                              Imply-And, 506

 

                 Sufficient: For ~(t,0,z) e exp  (to obtain a contradiction)

 

                        508  ~(t,0,z) e n3 | EXIST(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n] & [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(t,0,z) e d]] => ~(t,0,z) e exp

                              Rem DNeg, 507

 

                        509  EXIST(sub):[Set''(sub) & ALL(a):ALL(b):ALL(c):[(a,b,c) e sub

                      <=> (a,b,c) e exp & ~[a=t & b=0 & c=z]]]

                              Subset, 24

 

                        510  Set''(q) & ALL(a):ALL(b):ALL(c):[(a,b,c) e q

                      <=> (a,b,c) e exp & ~[a=t & b=0 & c=z]]

                              E Spec, 509

 

                 Define: q   (exp - {t,0,z})

 

                        511  Set''(q)

                              Split, 510

 

                        512  ALL(a):ALL(b):ALL(c):[(a,b,c) e q

                      <=> (a,b,c) e exp & ~[a=t & b=0 & c=z]]

                              Split, 510

 

                     

                      Suppose...

 

                              513  (u,v,w) e q

                                    Premise

 

                              514  ALL(b):ALL(c):[(u,b,c) e q

                          <=> (u,b,c) e exp & ~[u=t & b=0 & c=z]]

                                    U Spec, 512

 

                              515  ALL(c):[(u,v,c) e q

                          <=> (u,v,c) e exp & ~[u=t & v=0 & c=z]]

                                    U Spec, 514

 

                              516  (u,v,w) e q

                          <=> (u,v,w) e exp & ~[u=t & v=0 & w=z]

                                    U Spec, 515

 

                              517  [(u,v,w) e q => (u,v,w) e exp & ~[u=t & v=0 & w=z]]

                          & [(u,v,w) e exp & ~[u=t & v=0 & w=z] => (u,v,w) e q]

                                    Iff-And, 516

 

                              518  (u,v,w) e q => (u,v,w) e exp & ~[u=t & v=0 & w=z]

                                    Split, 517

 

                              519  (u,v,w) e exp & ~[u=t & v=0 & w=z] => (u,v,w) e q

                                    Split, 517

 

                              520  (u,v,w) e exp & ~[u=t & v=0 & w=z]

                                    Detach, 518, 513

 

                              521  (u,v,w) e exp

                                    Split, 520

 

                              522  ~[u=t & v=0 & w=z]

                                    Split, 520

 

                              523  ALL(b):ALL(c):[(u,b,c) e exp => u e n & b e n & c e n & (u,b,c) e n3]

                                    U Spec, 44

 

                              524  ALL(c):[(u,v,c) e exp => u e n & v e n & c e n & (u,v,c) e n3]

                                    U Spec, 523

 

                              525  (u,v,w) e exp => u e n & v e n & w e n & (u,v,w) e n3

                                    U Spec, 524

 

                              526  u e n & v e n & w e n & (u,v,w) e n3

                                    Detach, 525, 521

 

                              527  u e n

                                    Split, 526

 

                              528  v e n

                                    Split, 526

 

                              529  w e n

                                    Split, 526

 

                              530  (u,v,w) e n3

                                    Split, 526

 

                              531  u e n & v e n

                                    Join, 527, 528

 

                              532  u e n & v e n & w e n

                                    Join, 531, 529

 

                

                 As Required:

 

                        533  ALL(e):ALL(f):ALL(g):[(e,f,g) e q => e e n & f e n & g e n]

                              4 Conclusion, 513

 

                        534  ALL(b):ALL(c):[(0,b,c) e q

                      <=> (0,b,c) e exp & ~[0=t & b=0 & c=z]]

                              U Spec, 512

 

                        535  ALL(c):[(0,0,c) e q

                      <=> (0,0,c) e exp & ~[0=t & 0=0 & c=z]]

                              U Spec, 534

 

                        536  (0,0,x0) e q

                      <=> (0,0,x0) e exp & ~[0=t & 0=0 & x0=z]

                              U Spec, 535

 

                        537  [(0,0,x0) e q => (0,0,x0) e exp & ~[0=t & 0=0 & x0=z]]

                      & [(0,0,x0) e exp & ~[0=t & 0=0 & x0=z] => (0,0,x0) e q]

                              Iff-And, 536

 

                        538  (0,0,x0) e q => (0,0,x0) e exp & ~[0=t & 0=0 & x0=z]

                              Split, 537

 

                 Sufficient:

 

                        539  (0,0,x0) e exp & ~[0=t & 0=0 & x0=z] => (0,0,x0) e q

                              Split, 537

 

                              540  0=t & 0=0 & x0=z

                                    Premise

 

                              541  0=t

                                    Split, 540

 

                              542  0=0

                                    Split, 540

 

                              543  x0=z

                                    Split, 540

 

                              544  t=0

                                    Substitute, 541, 542

 

                              545  t=0 & ~t=0

                                    Join, 544, 488

 

                        546  ~[0=t & 0=0 & x0=z]

                              4 Conclusion, 540

 

                        547  (0,0,x0) e exp & ~[0=t & 0=0 & x0=z]

                              Join, 66, 546

 

                 As Required:

 

                        548  (0,0,x0) e q

                              Detach, 539, 547

 

                              549  u e n

                                    Premise

 

                                    550  ~u=0

                                          Premise

 

                                    551  ALL(b):ALL(c):[(u,b,c) e q

                               <=> (u,b,c) e exp & ~[u=t & b=0 & c=z]]

                                          U Spec, 512

 

                                    552  ALL(c):[(u,0,c) e q

                               <=> (u,0,c) e exp & ~[u=t & 0=0 & c=z]]

                                          U Spec, 551

 

                                    553  (u,0,1) e q

                               <=> (u,0,1) e exp & ~[u=t & 0=0 & 1=z]

                                          U Spec, 552

 

                                    554  [(u,0,1) e q => (u,0,1) e exp & ~[u=t & 0=0 & 1=z]]

                               & [(u,0,1) e exp & ~[u=t & 0=0 & 1=z] => (u,0,1) e q]

                                          Iff-And, 553

 

                                    555  (u,0,1) e q => (u,0,1) e exp & ~[u=t & 0=0 & 1=z]

                                          Split, 554

 

                          Sufficient:

 

                                    556  (u,0,1) e exp & ~[u=t & 0=0 & 1=z] => (u,0,1) e q

                                          Split, 554

 

                                    557  u e n => [~u=0 => (u,0,1) e exp]

                                          U Spec, 97

 

                                    558  ~u=0 => (u,0,1) e exp

                                          Detach, 557, 549

 

                                    559  (u,0,1) e exp

                                          Detach, 558, 550

 

                                          560  u=t & 0=0 & 1=z

                                                Premise

 

                                          561  u=t

                                                Split, 560

 

                                          562  0=0

                                                Split, 560

 

                                          563  1=z

                                                Split, 560

 

                                          564  z=1

                                                Sym, 563

 

                                          565  z=1 & ~z=1

                                                Join, 564, 493

 

                                    566  ~[u=t & 0=0 & 1=z]

                                          4 Conclusion, 560

 

                                    567  (u,0,1) e exp & ~[u=t & 0=0 & 1=z]

                                          Join, 559, 566

 

                                    568  (u,0,1) e q

                                          Detach, 556, 567

 

                              569  ~u=0 => (u,0,1) e q

                                    4 Conclusion, 550

 

                 As Required:

 

                        570  ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                              4 Conclusion, 549

 

                              571  (u,v,w) e q

                                    Premise

 

                              572  ALL(b):ALL(c):[(u,b,c) e q

                          <=> (u,b,c) e exp & ~[u=t & b=0 & c=z]]

                                    U Spec, 512

 

                              573  ALL(c):[(u,v,c) e q

                          <=> (u,v,c) e exp & ~[u=t & v=0 & c=z]]

                                    U Spec, 572

 

                              574  (u,v,w) e q

                          <=> (u,v,w) e exp & ~[u=t & v=0 & w=z]

                                    U Spec, 573

 

                              575  [(u,v,w) e q => (u,v,w) e exp & ~[u=t & v=0 & w=z]]

                          & [(u,v,w) e exp & ~[u=t & v=0 & w=z] => (u,v,w) e q]

                                    Iff-And, 574

 

                              576  (u,v,w) e q => (u,v,w) e exp & ~[u=t & v=0 & w=z]

                                    Split, 575

 

                              577  (u,v,w) e exp & ~[u=t & v=0 & w=z] => (u,v,w) e q

                                    Split, 575

 

                              578  (u,v,w) e exp & ~[u=t & v=0 & w=z]

                                    Detach, 576, 571

 

                              579  (u,v,w) e exp

                                    Split, 578

 

                              580  ~[u=t & v=0 & w=z]

                                    Split, 578

 

                              581  ALL(b):ALL(c):[(u,b,c) e q

                          <=> (u,b,c) e exp & ~[u=t & b=0 & c=z]]

                                    U Spec, 512

 

                              582  ALL(c):[(u,v+1,c) e q

                          <=> (u,v+1,c) e exp & ~[u=t & v+1=0 & c=z]]

                                    U Spec, 581

 

                              583  (u,v+1,w*u) e q

                          <=> (u,v+1,w*u) e exp & ~[u=t & v+1=0 & w*u=z]

                                    U Spec, 582

 

                              584  [(u,v+1,w*u) e q => (u,v+1,w*u) e exp & ~[u=t & v+1=0 & w*u=z]]

                          & [(u,v+1,w*u) e exp & ~[u=t & v+1=0 & w*u=z] => (u,v+1,w*u) e q]

                                    Iff-And, 583

 

                              585  (u,v+1,w*u) e q => (u,v+1,w*u) e exp & ~[u=t & v+1=0 & w*u=z]

                                    Split, 584

 

                      Sufficient:

 

                              586  (u,v+1,w*u) e exp & ~[u=t & v+1=0 & w*u=z] => (u,v+1,w*u) e q

                                    Split, 584

 

                              587  ALL(b):ALL(c):[(u,b,c) e exp => (u,b+1,c*u) e exp]

                                    U Spec, 155

 

                              588  ALL(c):[(u,v,c) e exp => (u,v+1,c*u) e exp]

                                    U Spec, 587

 

                              589  (u,v,w) e exp => (u,v+1,w*u) e exp

                                    U Spec, 588

 

                              590  (u,v+1,w*u) e exp

                                    Detach, 589, 579

 

                                    591  u=t & v+1=0 & w*u=z

                                          Premise

 

                                    592  u=t

                                          Split, 591

 

                                    593  v+1=0

                                          Split, 591

 

                                    594  w*u=z

                                          Split, 591

 

                                    595  v e n => ~v+1=0

                                          U Spec, 5

 

                                    596  ALL(b):ALL(c):[(u,b,c) e exp => u e n & b e n & c e n & (u,b,c) e n3]

                                          U Spec, 44

 

                                    597  ALL(c):[(u,v,c) e exp => u e n & v e n & c e n & (u,v,c) e n3]

                                          U Spec, 596

 

                                    598  (u,v,w) e exp => u e n & v e n & w e n & (u,v,w) e n3

                                          U Spec, 597

 

                                    599  u e n & v e n & w e n & (u,v,w) e n3

                                          Detach, 598, 579

 

                                    600  u e n

                                          Split, 599

 

                                    601  v e n

                                          Split, 599

 

                                    602  w e n

                                          Split, 599

 

                                    603  (u,v,w) e n3

                                          Split, 599

 

                                    604  ~v+1=0

                                          Detach, 595, 601

 

                                    605  v+1=0 & ~v+1=0

                                          Join, 593, 604

 

                              606  ~[u=t & v+1=0 & w*u=z]

                                    4 Conclusion, 591

 

                              607  (u,v+1,w*u) e exp & ~[u=t & v+1=0 & w*u=z]

                                    Join, 590, 606

 

                              608  (u,v+1,w*u) e q

                                    Detach, 586, 607

 

                 As Required:

 

                        609  ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                              4 Conclusion, 571

 

                        610  ALL(b):ALL(c):[(t,b,c) e q

                      <=> (t,b,c) e exp & ~[t=t & b=0 & c=z]]

                              U Spec, 512

 

                        611  ALL(c):[(t,0,c) e q

                      <=> (t,0,c) e exp & ~[t=t & 0=0 & c=z]]

                              U Spec, 610

 

                        612  (t,0,z) e q

                      <=> (t,0,z) e exp & ~[t=t & 0=0 & z=z]

                              U Spec, 611

 

                        613  [(t,0,z) e q => (t,0,z) e exp & ~[t=t & 0=0 & z=z]]

                      & [(t,0,z) e exp & ~[t=t & 0=0 & z=z] => (t,0,z) e q]

                              Iff-And, 612

 

                        614  (t,0,z) e q => (t,0,z) e exp & ~[t=t & 0=0 & z=z]

                              Split, 613

 

                        615  (t,0,z) e exp & ~[t=t & 0=0 & z=z] => (t,0,z) e q

                              Split, 613

 

                        616  ~[(t,0,z) e exp & ~[t=t & 0=0 & z=z]] => ~(t,0,z) e q

                              Contra, 614

 

                        617  ~~[~(t,0,z) e exp | ~~[t=t & 0=0 & z=z]] => ~(t,0,z) e q

                              DeMorgan, 616

 

                        618  ~(t,0,z) e exp | ~~[t=t & 0=0 & z=z] => ~(t,0,z) e q

                              Rem DNeg, 617

 

                        619  ~(t,0,z) e exp | t=t & 0=0 & z=z => ~(t,0,z) e q

                              Rem DNeg, 618

 

                        620  t=t

                              Reflex

 

                        621  0=0

                              Reflex

 

                        622  z=z

                              Reflex

 

                        623  t=t & 0=0

                              Join, 620, 621

 

                        624  t=t & 0=0 & z=z

                              Join, 623, 622

 

                        625  ~(t,0,z) e exp | t=t & 0=0 & z=z

                              Arb Or, 624

 

                 As Required:

 

                        626  ~(t,0,z) e q

                              Detach, 619, 625

 

                        627  Set''(q)

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => e e n & f e n & g e n]

                              Join, 511, 533

 

                        628  (0,0,x0) e q

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                              Join, 548, 570

 

                        629  (0,0,x0) e q

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                              Join, 628, 609

 

                        630  (0,0,x0) e q

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                      & ~(t,0,z) e q

                              Join, 629, 626

 

                        631  Set''(q)

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => e e n & f e n & g e n]

                      & [(0,0,x0) e q

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                      & ~(t,0,z) e q]

                              Join, 627, 630

 

                        632  EXIST(d):[Set''(d)

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      & [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      & ~(t,0,z) e d]]

                              E Gen, 631

 

                        633  ~(t,0,z) e n3 | EXIST(d):[Set''(d)

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                      & [(0,0,x0) e d

                      & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                      & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                      & ~(t,0,z) e d]]

                              Arb Or, 632

 

                        634  ~(t,0,z) e exp

                              Detach, 508, 633

 

                        635  (t,0,z) e exp & ~(t,0,z) e exp

                              Join, 492, 634

 

                  636  ~EXIST(c):~[(t,0,c) e exp => c=1]

                        4 Conclusion, 489

 

                  637  ~~ALL(c):~~[(t,0,c) e exp => c=1]

                        Quant, 636

 

                  638  ALL(c):~~[(t,0,c) e exp => c=1]

                        Rem DNeg, 637

 

                  639  ALL(c):[(t,0,c) e exp => c=1]

                        Rem DNeg, 638

 

            640  ~t=0 => ALL(c):[(t,0,c) e exp => c=1]

                  4 Conclusion, 488

 

    As Required:

 

      641  ALL(a):[a e n => [~a=0 => ALL(c):[(a,0,c) e exp => c=1]]]

            4 Conclusion, 487

 

        

         Supose...

 

            642  x e n

                  Premise

 

            643  EXIST(sub):[Set(sub) & ALL(b):[b e sub <=> b e n & ALL(c):ALL(d):[(x,b,c) e exp & (x,b,d) e exp => c=d]]]

                  Subset, 2

 

            644  Set(p3) & ALL(b):[b e p3 <=> b e n & ALL(c):ALL(d):[(x,b,c) e exp & (x,b,d) e exp => c=d]]

                  E Spec, 643

 

        

         Define: p3

 

            645  Set(p3)

                  Split, 644

 

            646  ALL(b):[b e p3 <=> b e n & ALL(c):ALL(d):[(x,b,c) e exp & (x,b,d) e exp => c=d]]

                  Split, 644

 

            647  Set(p3) & ALL(b):[b e p3 => b e n]

             => [0 e p3 & ALL(b):[b e p3 => b+1 e p3]

             => ALL(b):[b e n => b e p3]]

                  U Spec, 6

 

                  648  y e p3

                        Premise

 

                  649  y e p3 <=> y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                        U Spec, 646

 

                  650  [y e p3 => y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]]

                 & [y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d] => y e p3]

                        Iff-And, 649

 

                  651  y e p3 => y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                        Split, 650

 

                  652  y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d] => y e p3

                        Split, 650

 

                  653  y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                        Detach, 651, 648

 

                  654  y e n

                        Split, 653

 

            655  ALL(b):[b e p3 => b e n]

                  4 Conclusion, 648

 

            656  Set(p3) & ALL(b):[b e p3 => b e n]

                  Join, 645, 655

 

        

         Sufficient:

 

            657  0 e p3 & ALL(b):[b e p3 => b+1 e p3]

             => ALL(b):[b e n => b e p3]

                  Detach, 647, 656

 

            658  0 e p3 <=> 0 e n & ALL(c):ALL(d):[(x,0,c) e exp & (x,0,d) e exp => c=d]

                  U Spec, 646

 

            659  [0 e p3 => 0 e n & ALL(c):ALL(d):[(x,0,c) e exp & (x,0,d) e exp => c=d]]

             & [0 e n & ALL(c):ALL(d):[(x,0,c) e exp & (x,0,d) e exp => c=d] => 0 e p3]

                  Iff-And, 658

 

            660  0 e p3 => 0 e n & ALL(c):ALL(d):[(x,0,c) e exp & (x,0,d) e exp => c=d]

                  Split, 659

 

         Sufficient:

 

            661  0 e n & ALL(c):ALL(d):[(x,0,c) e exp & (x,0,d) e exp => c=d] => 0 e p3

                  Split, 659

 

            662  x=0 | ~x=0

                  Or Not

 

                  663  (x,0,z1) e exp & (x,0,z2) e exp

                        Premise

 

                  664  (x,0,z1) e exp

                        Split, 663

 

                  665  (x,0,z2) e exp

                        Split, 663

 

                  666  ALL(b):ALL(c):[(x,b,c) e exp => x e n & b e n & c e n & (x,b,c) e n3]

                        U Spec, 44

 

                  667  ALL(c):[(x,0,c) e exp => x e n & 0 e n & c e n & (x,0,c) e n3]

                        U Spec, 666

 

                  668  (x,0,z1) e exp => x e n & 0 e n & z1 e n & (x,0,z1) e n3

                        U Spec, 667

 

                  669  x e n & 0 e n & z1 e n & (x,0,z1) e n3

                        Detach, 668, 664

 

                  670  x e n

                        Split, 669

 

                  671  0 e n

                        Split, 669

 

                  672  z1 e n

                        Split, 669

 

                  673  (x,0,z1) e n3

                        Split, 669

 

                  674  (x,0,z2) e exp => x e n & 0 e n & z2 e n & (x,0,z2) e n3

                        U Spec, 667

 

                  675  x e n & 0 e n & z2 e n & (x,0,z2) e n3

                        Detach, 674, 665

 

                  676  x e n

                        Split, 675

 

                  677  0 e n

                        Split, 675

 

                  678  z2 e n

                        Split, 675

 

                  679  (x,0,z2) e n3

                        Split, 675

 

                        680  x=0

                              Premise

 

                        681  z1 e n => [(0,0,z1) e exp => z1=x0]

                              U Spec, 486

 

                        682  (0,0,z1) e exp => z1=x0

                              Detach, 681, 672

 

                        683  (0,0,z1) e exp

                              Substitute, 680, 664

 

                        684  z1=x0

                              Detach, 682, 683

 

                        685  z2 e n => [(0,0,z2) e exp => z2=x0]

                              U Spec, 486

 

                        686  (0,0,z2) e exp => z2=x0

                              Detach, 685, 678

 

                        687  (0,0,z2) e exp

                              Substitute, 680, 665

 

                        688  z2=x0

                              Detach, 686, 687

 

                        689  z1=z2

                              Substitute, 688, 684

 

                  690  x=0 => z1=z2

                        4 Conclusion, 680

 

                        691  ~x=0

                              Premise

 

                        692  x e n => [~x=0 => ALL(c):[(x,0,c) e exp => c=1]]

                              U Spec, 641

 

                        693  ~x=0 => ALL(c):[(x,0,c) e exp => c=1]

                              Detach, 692, 642

 

                        694  ALL(c):[(x,0,c) e exp => c=1]

                              Detach, 693, 691

 

                        695  (x,0,z1) e exp => z1=1

                              U Spec, 694

 

                        696  z1=1

                              Detach, 695, 664

 

                        697  (x,0,z2) e exp => z2=1

                              U Spec, 694

 

                        698  z2=1

                              Detach, 697, 665

 

                        699  z1=z2

                              Substitute, 698, 696

 

                  700  ~x=0 => z1=z2

                        4 Conclusion, 691

 

                  701  [x=0 => z1=z2] & [~x=0 => z1=z2]

                        Join, 690, 700

 

                  702  z1=z2

                        Cases, 662, 701

 

            703  ALL(c):ALL(d):[(x,0,c) e exp & (x,0,d) e exp => c=d]

                  4 Conclusion, 663

 

            704  0 e n

             & ALL(c):ALL(d):[(x,0,c) e exp & (x,0,d) e exp => c=d]

                  Join, 3, 703

 

         As Required:

 

            705  0 e p3

                  Detach, 661, 704

 

            

             Suppose...

 

                  706  y e p3

                        Premise

 

                  707  y e p3 <=> y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                        U Spec, 646

 

                  708  [y e p3 => y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]]

                 & [y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d] => y e p3]

                        Iff-And, 707

 

                  709  y e p3 => y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                        Split, 708

 

                  710  y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d] => y e p3

                        Split, 708

 

                  711  y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                        Detach, 709, 706

 

                  712  y e n

                        Split, 711

 

                  713  ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                        Split, 711

 

                  714  ALL(b):[x e n & b e n => EXIST(c):[c e n & (x,b,c) e exp]]

                        U Spec, 337

 

                  715  x e n & y e n => EXIST(c):[c e n & (x,y,c) e exp]

                        U Spec, 714

 

                  716  x e n & y e n

                        Join, 642, 712

 

                  717  EXIST(c):[c e n & (x,y,c) e exp]

                        Detach, 715, 716

 

                  718  z1 e n & (x,y,z1) e exp

                        E Spec, 717

 

                  719  ALL(b):[x e n & b e n => EXIST(c):[c e n & (x,b,c) e exp]]

                        U Spec, 337

 

                  720  x e n & y e n => EXIST(c):[c e n & (x,y,c) e exp]

                        U Spec, 719

 

                  721  x e n & y e n

                        Join, 642, 712

 

                  722  EXIST(c):[c e n & (x,y,c) e exp]

                        Detach, 720, 721

 

                  723  z e n & (x,y,z) e exp

                        E Spec, 722

 

                  724  z e n

                        Split, 723

 

                  725  (x,y,z) e exp

                        Split, 723

 

                  726  ALL(d):[(x,y,z) e exp & (x,y,d) e exp => z=d]

                        U Spec, 713

 

                

                 Suppose...

 

                        727  z' e n

                              Premise

 

                        728  (x,y,z) e exp & (x,y,z') e exp => z=z'

                              U Spec, 726

 

                              729  (x,y,z') e exp

                                    Premise

 

                              730  (x,y,z) e exp & (x,y,z') e exp

                                    Join, 725, 729

 

                              731  z=z'

                                    Detach, 728, 730

 

                        732  (x,y,z') e exp => z=z'

                              4 Conclusion, 729

 

                  733  ALL(c):[c e n => [(x,y,c) e exp => z=c]]

                        4 Conclusion, 727

 

                

                 Suppose...

 

                        734  z' e n

                              Premise

 

                     

                      Suppose to the contrary...

 

                              735  ~[(x,y+1,z') e exp => z'=z*x]

                                    Premise

 

                              736  ~~[(x,y+1,z') e exp & ~z'=z*x]

                                    Imply-And, 735

 

                              737  (x,y+1,z') e exp & ~z'=z*x

                                    Rem DNeg, 736

 

                              738  (x,y+1,z') e exp

                                    Split, 737

 

                              739  ~z'=z*x

                                    Split, 737

 

                              740  ALL(b):ALL(c):[(x,b,c) e exp

                          <=> (x,b,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,b,c) e d]]]

                                    U Spec, 25

 

                              741  ALL(c):[(x,y+1,c) e exp

                          <=> (x,y+1,c) e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,c) e d]]]

                                    U Spec, 740

 

                              742  (x,y+1,z') e exp

                          <=> (x,y+1,z') e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]]

                                    U Spec, 741

 

                              743  [(x,y+1,z') e exp => (x,y+1,z') e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]]]

                          & [(x,y+1,z') e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]] => (x,y+1,z') e exp]

                                    Iff-And, 742

 

                              744  (x,y+1,z') e exp => (x,y+1,z') e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]]

                                    Split, 743

 

                              745  (x,y+1,z') e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]] => (x,y+1,z') e exp

                                    Split, 743

 

                              746  ~[(x,y+1,z') e n3 & ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]]] => ~(x,y+1,z') e exp

                                    Contra, 744

 

                              747  ~~[~(x,y+1,z') e n3 | ~ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]]] => ~(x,y+1,z') e exp

                                    DeMorgan, 746

 

                              748  ~(x,y+1,z') e n3 | ~ALL(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]] => ~(x,y+1,z') e exp

                                    Rem DNeg, 747

 

                              749  ~(x,y+1,z') e n3 | ~~EXIST(d):~[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]] => ~(x,y+1,z') e exp

                                    Quant, 748

 

                              750  ~(x,y+1,z') e n3 | EXIST(d):~[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          => [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]] => ~(x,y+1,z') e exp

                                    Rem DNeg, 749

 

                              751  ~(x,y+1,z') e n3 | EXIST(d):~~[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n] & ~[(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]] => ~(x,y+1,z') e exp

                                    Imply-And, 750

 

                              752  ~(x,y+1,z') e n3 | EXIST(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n] & ~[(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          => (x,y+1,z') e d]] => ~(x,y+1,z') e exp

                                    Rem DNeg, 751

 

                              753  ~(x,y+1,z') e n3 | EXIST(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n] & ~~[(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(x,y+1,z') e d]] => ~(x,y+1,z') e exp

                                    Imply-And, 752

 

                     

                      Sufficient: ~(x,y+1,z') e exp

 

                              754  ~(x,y+1,z') e n3 | EXIST(d):[Set''(d) & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n] & [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d] & ~(x,y+1,z') e d]] => ~(x,y+1,z') e exp

                                    Rem DNeg, 753

 

                              755  EXIST(sub):[Set''(sub) & ALL(a):ALL(b):ALL(c):[(a,b,c) e sub

                          <=> (a,b,c) e exp & ~[a=x & b=y+1 & c=z']]]

                                    Subset, 24

 

                              756  Set''(q) & ALL(a):ALL(b):ALL(c):[(a,b,c) e q

                          <=> (a,b,c) e exp & ~[a=x & b=y+1 & c=z']]

                                    E Spec, 755

 

                     

                      Define: q

 

                              757  Set''(q)

                                    Split, 756

 

                              758  ALL(a):ALL(b):ALL(c):[(a,b,c) e q

                          <=> (a,b,c) e exp & ~[a=x & b=y+1 & c=z']]

                                    Split, 756

 

                                    759  (t,u,v) e q

                                          Premise

 

                                    760  ALL(b):ALL(c):[(t,b,c) e q

                               <=> (t,b,c) e exp & ~[t=x & b=y+1 & c=z']]

                                          U Spec, 758

 

                                    761  ALL(c):[(t,u,c) e q

                               <=> (t,u,c) e exp & ~[t=x & u=y+1 & c=z']]

                                          U Spec, 760

 

                                    762  (t,u,v) e q

                               <=> (t,u,v) e exp & ~[t=x & u=y+1 & v=z']

                                          U Spec, 761

 

                                    763  [(t,u,v) e q => (t,u,v) e exp & ~[t=x & u=y+1 & v=z']]

                               & [(t,u,v) e exp & ~[t=x & u=y+1 & v=z'] => (t,u,v) e q]

                                          Iff-And, 762

 

                                    764  (t,u,v) e q => (t,u,v) e exp & ~[t=x & u=y+1 & v=z']

                                          Split, 763

 

                                    765  (t,u,v) e exp & ~[t=x & u=y+1 & v=z'] => (t,u,v) e q

                                          Split, 763

 

                                    766  (t,u,v) e exp & ~[t=x & u=y+1 & v=z']

                                          Detach, 764, 759

 

                                    767  (t,u,v) e exp

                                          Split, 766

 

                                    768  ~[t=x & u=y+1 & v=z']

                                          Split, 766

 

                                    769  ALL(b):ALL(c):[(t,b,c) e exp => t e n & b e n & c e n & (t,b,c) e n3]

                                          U Spec, 44

 

                                    770  ALL(c):[(t,u,c) e exp => t e n & u e n & c e n & (t,u,c) e n3]

                                          U Spec, 769

 

                                    771  (t,u,v) e exp => t e n & u e n & v e n & (t,u,v) e n3

                                          U Spec, 770

 

                                    772  t e n & u e n & v e n & (t,u,v) e n3

                                          Detach, 771, 767

 

                                    773  t e n

                                          Split, 772

 

                                    774  u e n

                                          Split, 772

 

                                    775  v e n

                                          Split, 772

 

                                    776  (t,u,v) e n3

                                          Split, 772

 

                                    777  t e n & u e n

                                          Join, 773, 774

 

                                    778  t e n & u e n & v e n

                                          Join, 777, 775

 

                     

                      As Required:

 

                              779  ALL(e):ALL(f):ALL(g):[(e,f,g) e q => e e n & f e n & g e n]

                                    4 Conclusion, 759

 

                              780  ALL(b):ALL(c):[(0,b,c) e q

                          <=> (0,b,c) e exp & ~[0=x & b=y+1 & c=z']]

                                    U Spec, 758

 

                              781  ALL(c):[(0,0,c) e q

                          <=> (0,0,c) e exp & ~[0=x & 0=y+1 & c=z']]

                                    U Spec, 780

 

                              782  (0,0,x0) e q

                          <=> (0,0,x0) e exp & ~[0=x & 0=y+1 & x0=z']

                                    U Spec, 781

 

                              783  [(0,0,x0) e q => (0,0,x0) e exp & ~[0=x & 0=y+1 & x0=z']]

                          & [(0,0,x0) e exp & ~[0=x & 0=y+1 & x0=z'] => (0,0,x0) e q]

                                    Iff-And, 782

 

                              784  (0,0,x0) e q => (0,0,x0) e exp & ~[0=x & 0=y+1 & x0=z']

                                    Split, 783

 

                              785  (0,0,x0) e exp & ~[0=x & 0=y+1 & x0=z'] => (0,0,x0) e q

                                    Split, 783

 

                         

                          Suppose to the contrary...

 

                                    786  0=x & 0=y+1 & x0=z'

                                          Premise

 

                                    787  0=x

                                          Split, 786

 

                                    788  0=y+1

                                          Split, 786

 

                                    789  x0=z'

                                          Split, 786

 

                                    790  y e n => ~y+1=0

                                          U Spec, 5

 

                                    791  ~y+1=0

                                          Detach, 790, 712

 

                                    792  ~0=y+1

                                          Sym, 791

 

                                    793  0=y+1 & ~0=y+1

                                          Join, 788, 792

 

                              794  ~[0=x & 0=y+1 & x0=z']

                                    4 Conclusion, 786

 

                              795  (0,0,x0) e exp & ~[0=x & 0=y+1 & x0=z']

                                    Join, 66, 794

 

                      As Required:

 

                              796  (0,0,x0) e q

                                    Detach, 785, 795

 

                         

                          Suppose...

 

                                    797  t e n

                                          Premise

 

                               Suppose...

 

                                          798  ~t=0

                                                Premise

 

                                          799  ALL(b):ALL(c):[(t,b,c) e q

                                   <=> (t,b,c) e exp & ~[t=x & b=y+1 & c=z']]

                                                U Spec, 758

 

                                          800  ALL(c):[(t,0,c) e q

                                   <=> (t,0,c) e exp & ~[t=x & 0=y+1 & c=z']]

                                                U Spec, 799

 

                                          801  (t,0,1) e q

                                   <=> (t,0,1) e exp & ~[t=x & 0=y+1 & 1=z']

                                                U Spec, 800

 

                                          802  [(t,0,1) e q => (t,0,1) e exp & ~[t=x & 0=y+1 & 1=z']]

                                   & [(t,0,1) e exp & ~[t=x & 0=y+1 & 1=z'] => (t,0,1) e q]

                                                Iff-And, 801

 

                                          803  (t,0,1) e q => (t,0,1) e exp & ~[t=x & 0=y+1 & 1=z']

                                                Split, 802

 

                               Sufficient:

 

                                          804  (t,0,1) e exp & ~[t=x & 0=y+1 & 1=z'] => (t,0,1) e q

                                                Split, 802

 

                                          805  t e n => [~t=0 => (t,0,1) e exp]

                                                U Spec, 97

 

                                          806  ~t=0 => (t,0,1) e exp

                                                Detach, 805, 797

 

                                          807  (t,0,1) e exp

                                                Detach, 806, 798

 

                                                808  t=x & 0=y+1 & 1=z'

                                                      Premise

 

                                                809  t=x

                                                      Split, 808

 

                                                810  0=y+1

                                                      Split, 808

 

                                                811  1=z'

                                                      Split, 808

 

                                                812  y e n => ~y+1=0

                                                      U Spec, 5

 

                                                813  ~y+1=0

                                                      Detach, 812, 712

 

                                                814  ~0=y+1

                                                      Sym, 813

 

                                                815  0=y+1 & ~0=y+1

                                                      Join, 810, 814

 

                                          816  ~[t=x & 0=y+1 & 1=z']

                                                4 Conclusion, 808

 

                                          817  (t,0,1) e exp & ~[t=x & 0=y+1 & 1=z']

                                                Join, 807, 816

 

                                          818  (t,0,1) e q

                                                Detach, 804, 817

 

                                    819  ~t=0 => (t,0,1) e q

                                          4 Conclusion, 798

 

                      As Required:

 

                              820  ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                                    4 Conclusion, 797

 

                         

                          Prove: ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                         

                          Suppose...

 

                                    821  (t,u,v) e q

                                          Premise

 

                                    822  ALL(b):ALL(c):[(t,b,c) e q

                               <=> (t,b,c) e exp & ~[t=x & b=y+1 & c=z']]

                                          U Spec, 758

 

                                    823  ALL(c):[(t,u,c) e q

                               <=> (t,u,c) e exp & ~[t=x & u=y+1 & c=z']]

                                          U Spec, 822

 

                                    824  (t,u,v) e q

                               <=> (t,u,v) e exp & ~[t=x & u=y+1 & v=z']

                                          U Spec, 823

 

                                    825  [(t,u,v) e q => (t,u,v) e exp & ~[t=x & u=y+1 & v=z']]

                               & [(t,u,v) e exp & ~[t=x & u=y+1 & v=z'] => (t,u,v) e q]

                                          Iff-And, 824

 

                                    826  (t,u,v) e q => (t,u,v) e exp & ~[t=x & u=y+1 & v=z']

                                          Split, 825

 

                                    827  (t,u,v) e exp & ~[t=x & u=y+1 & v=z'] => (t,u,v) e q

                                          Split, 825

 

                                    828  (t,u,v) e exp & ~[t=x & u=y+1 & v=z']

                                          Detach, 826, 821

 

                                    829  (t,u,v) e exp

                                          Split, 828

 

                                    830  ~[t=x & u=y+1 & v=z']

                                          Split, 828

 

                                    831  ALL(b):ALL(c):[(t,b,c) e exp => t e n & b e n & c e n & (t,b,c) e n3]

                                          U Spec, 44

 

                                    832  ALL(c):[(t,u,c) e exp => t e n & u e n & c e n & (t,u,c) e n3]

                                          U Spec, 831

 

                                    833  (t,u,v) e exp => t e n & u e n & v e n & (t,u,v) e n3

                                          U Spec, 832

 

                                    834  t e n & u e n & v e n & (t,u,v) e n3

                                          Detach, 833, 829

 

                                    835  t e n

                                          Split, 834

 

                                    836  u e n

                                          Split, 834

 

                                    837  v e n

                                          Split, 834

 

                                    838  (t,u,v) e n3

                                          Split, 834

 

                                    839  ALL(b):ALL(c):[(t,b,c) e q

                               <=> (t,b,c) e exp & ~[t=x & b=y+1 & c=z']]

                                          U Spec, 758

 

                                    840  ALL(c):[(t,u+1,c) e q

                               <=> (t,u+1,c) e exp & ~[t=x & u+1=y+1 & c=z']]

                                          U Spec, 839

 

                                    841  (t,u+1,v*t) e q

                               <=> (t,u+1,v*t) e exp & ~[t=x & u+1=y+1 & v*t=z']

                                          U Spec, 840

 

                                    842  [(t,u+1,v*t) e q => (t,u+1,v*t) e exp & ~[t=x & u+1=y+1 & v*t=z']]

                               & [(t,u+1,v*t) e exp & ~[t=x & u+1=y+1 & v*t=z'] => (t,u+1,v*t) e q]

                                          Iff-And, 841

 

                                    843  (t,u+1,v*t) e q => (t,u+1,v*t) e exp & ~[t=x & u+1=y+1 & v*t=z']

                                          Split, 842

 

                          Sufficient:

 

                                    844  (t,u+1,v*t) e exp & ~[t=x & u+1=y+1 & v*t=z'] => (t,u+1,v*t) e q

                                          Split, 842

 

                                    845  ALL(b):ALL(c):[(t,b,c) e exp => (t,b+1,c*t) e exp]

                                          U Spec, 155

 

                                    846  ALL(c):[(t,u,c) e exp => (t,u+1,c*t) e exp]

                                          U Spec, 845

 

                                    847  (t,u,v) e exp => (t,u+1,v*t) e exp

                                          U Spec, 846

 

                                    848  (t,u+1,v*t) e exp

                                          Detach, 847, 829

 

                                          849  t=x & u+1=y+1 & v*t=z'

                                                Premise

 

                                          850  t=x

                                                Split, 849

 

                                          851  u+1=y+1

                                                Split, 849

 

                                          852  v*t=z'

                                                Split, 849

 

                                          853  v*x=z'

                                                Substitute, 850, 852

 

                                          854  ALL(b):[u e n & b e n => [u+1=b+1 => u=b]]

                                                U Spec, 4

 

                                          855  u e n & y e n => [u+1=y+1 => u=y]

                                                U Spec, 854

 

                                          856  u e n & y e n

                                                Join, 836, 712

 

                                          857  u+1=y+1 => u=y

                                                Detach, 855, 856

 

                                          858  u=y

                                                Detach, 857, 851

 

                                          859  (x,u,v) e exp

                                                Substitute, 850, 829

 

                                          860  (x,y,v) e exp

                                                Substitute, 858, 859

 

                                          861  v e n => [(x,y,v) e exp => z=v]

                                                U Spec, 733

 

                                          862  (x,y,v) e exp => z=v

                                                Detach, 861, 837

 

                                          863  z=v

                                                Detach, 862, 860

 

                                          864  z*x=z'

                                                Substitute, 863, 853

 

                                          865  z'=z*x

                                                Sym, 864

 

                                          866  z'=z*x & ~z'=z*x

                                                Join, 865, 739

 

                                    867  ~[t=x & u+1=y+1 & v*t=z']

                                          4 Conclusion, 849

 

                                    868  (t,u+1,v*t) e exp & ~[t=x & u+1=y+1 & v*t=z']

                                          Join, 848, 867

 

                                    869  (t,u+1,v*t) e q

                                          Detach, 844, 868

 

                      As Required:

 

                              870  ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                                    4 Conclusion, 821

 

                              871  ALL(b):ALL(c):[(x,b,c) e q

                          <=> (x,b,c) e exp & ~[x=x & b=y+1 & c=z']]

                                    U Spec, 758

 

                              872  ALL(c):[(x,y+1,c) e q

                          <=> (x,y+1,c) e exp & ~[x=x & y+1=y+1 & c=z']]

                                    U Spec, 871

 

                              873  (x,y+1,z') e q

                          <=> (x,y+1,z') e exp & ~[x=x & y+1=y+1 & z'=z']

                                    U Spec, 872

 

                              874  [(x,y+1,z') e q => (x,y+1,z') e exp & ~[x=x & y+1=y+1 & z'=z']]

                          & [(x,y+1,z') e exp & ~[x=x & y+1=y+1 & z'=z'] => (x,y+1,z') e q]

                                    Iff-And, 873

 

                              875  (x,y+1,z') e q => (x,y+1,z') e exp & ~[x=x & y+1=y+1 & z'=z']

                                    Split, 874

 

                              876  (x,y+1,z') e exp & ~[x=x & y+1=y+1 & z'=z'] => (x,y+1,z') e q

                                    Split, 874

 

                              877  ~[(x,y+1,z') e exp & ~[x=x & y+1=y+1 & z'=z']] => ~(x,y+1,z') e q

                                    Contra, 875

 

                              878  ~~[~(x,y+1,z') e exp | ~~[x=x & y+1=y+1 & z'=z']] => ~(x,y+1,z') e q

                                    DeMorgan, 877

 

                              879  ~(x,y+1,z') e exp | ~~[x=x & y+1=y+1 & z'=z'] => ~(x,y+1,z') e q

                                    Rem DNeg, 878

 

                              880  ~(x,y+1,z') e exp | x=x & y+1=y+1 & z'=z' => ~(x,y+1,z') e q

                                    Rem DNeg, 879

 

                              881  x=x

                                    Reflex

 

                              882  y+1=y+1

                                    Reflex

 

                              883  z'=z'

                                    Reflex

 

                              884  x=x & y+1=y+1

                                    Join, 881, 882

 

                              885  x=x & y+1=y+1 & z'=z'

                                    Join, 884, 883

 

                              886  ~(x,y+1,z') e exp | x=x & y+1=y+1 & z'=z'

                                    Arb Or, 885

 

                      As Required:

 

                              887  ~(x,y+1,z') e q

                                    Detach, 880, 886

 

                              888  Set''(q)

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => e e n & f e n & g e n]

                                    Join, 757, 779

 

                              889  (0,0,x0) e q

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                                    Join, 796, 820

 

                              890  (0,0,x0) e q

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                                    Join, 889, 870

 

                              891  (0,0,x0) e q

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                          & ~(x,y+1,z') e q

                                    Join, 890, 887

 

                              892  Set''(q)

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => e e n & f e n & g e n]

                          & [(0,0,x0) e q

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e q]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e q => (e,f+1,g*e) e q]

                          & ~(x,y+1,z') e q]

                                    Join, 888, 891

 

                              893  EXIST(d):[Set''(d)

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          & [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          & ~(x,y+1,z') e d]]

                                    E Gen, 892

 

                              894  ~(x,y+1,z') e n3 | EXIST(d):[Set''(d)

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => e e n & f e n & g e n]

                          & [(0,0,x0) e d

                          & ALL(e):[e e n => [~e=0 => (e,0,1) e d]]

                          & ALL(e):ALL(f):ALL(g):[(e,f,g) e d => (e,f+1,g*e) e d]

                          & ~(x,y+1,z') e d]]

                                    Arb Or, 893

 

                              895  ~(x,y+1,z') e exp

                                    Detach, 754, 894

 

                              896  (x,y+1,z') e exp & ~(x,y+1,z') e exp

                                    Join, 738, 895

 

                        897  ~~[(x,y+1,z') e exp => z'=z*x]

                              4 Conclusion, 735

 

                        898  (x,y+1,z') e exp => z'=z*x

                              Rem DNeg, 897

 

                  899  ALL(d):[d e n => [(x,y+1,d) e exp => d=z*x]]

                        4 Conclusion, 734

 

                  900  y+1 e p3 <=> y+1 e n & ALL(c):ALL(d):[(x,y+1,c) e exp & (x,y+1,d) e exp => c=d]

                        U Spec, 646

 

                  901  [y+1 e p3 => y+1 e n & ALL(c):ALL(d):[(x,y+1,c) e exp & (x,y+1,d) e exp => c=d]]

                 & [y+1 e n & ALL(c):ALL(d):[(x,y+1,c) e exp & (x,y+1,d) e exp => c=d] => y+1 e p3]

                        Iff-And, 900

 

                  902  y+1 e p3 => y+1 e n & ALL(c):ALL(d):[(x,y+1,c) e exp & (x,y+1,d) e exp => c=d]

                        Split, 901

 

            

             Sufficient: y+1 e p3

 

                  903  y+1 e n & ALL(c):ALL(d):[(x,y+1,c) e exp & (x,y+1,d) e exp => c=d] => y+1 e p3

                        Split, 901

 

                  904  ALL(b):[y e n & b e n => y+b e n]

                        U Spec, 9

 

                  905  y e n & 1 e n => y+1 e n

                        U Spec, 904

 

                  906  y e n & 1 e n

                        Join, 712, 7

 

                  907  y+1 e n

                        Detach, 905, 906

 

                        908  (x,y+1,z') e exp & (x,y+1,z'') e exp

                              Premise

 

                        909  (x,y+1,z') e exp

                              Split, 908

 

                        910  (x,y+1,z'') e exp

                              Split, 908

 

                        911  ALL(b):ALL(c):[(x,b,c) e exp => x e n & b e n & c e n & (x,b,c) e n3]

                              U Spec, 44

 

                        912  ALL(c):[(x,y+1,c) e exp => x e n & y+1 e n & c e n & (x,y+1,c) e n3]

                              U Spec, 911

 

                        913  (x,y+1,z') e exp => x e n & y+1 e n & z' e n & (x,y+1,z') e n3

                              U Spec, 912

 

                        914  x e n & y+1 e n & z' e n & (x,y+1,z') e n3

                              Detach, 913, 909

 

                        915  x e n

                              Split, 914

 

                        916  y+1 e n

                              Split, 914

 

                        917  z' e n

                              Split, 914

 

                        918  (x,y+1,z') e n3

                              Split, 914

 

                        919  z' e n => [(x,y+1,z') e exp => z'=z*x]

                              U Spec, 899

 

                        920  (x,y+1,z') e exp => z'=z*x

                              Detach, 919, 917

 

                        921  z'=z*x

                              Detach, 920, 909

 

                        922  (x,y+1,z'') e exp => x e n & y+1 e n & z'' e n & (x,y+1,z'') e n3

                              U Spec, 912

 

                        923  x e n & y+1 e n & z'' e n & (x,y+1,z'') e n3

                              Detach, 922, 910

 

                        924  x e n

                              Split, 923

 

                        925  y+1 e n

                              Split, 923

 

                        926  z'' e n

                              Split, 923

 

                        927  (x,y+1,z'') e n3

                              Split, 923

 

                        928  z'' e n => [(x,y+1,z'') e exp => z''=z*x]

                              U Spec, 899

 

                        929  (x,y+1,z'') e exp => z''=z*x

                              Detach, 928, 926

 

                        930  z''=z*x

                              Detach, 929, 910

 

                        931  z'=z''

                              Substitute, 930, 921

 

                  932  ALL(c):ALL(d):[(x,y+1,c) e exp & (x,y+1,d) e exp => c=d]

                        4 Conclusion, 908

 

                  933  y+1 e n

                 & ALL(c):ALL(d):[(x,y+1,c) e exp & (x,y+1,d) e exp => c=d]

                        Join, 907, 932

 

                  934  y+1 e p3

                        Detach, 903, 933

 

            935  ALL(b):[b e p3 => b+1 e p3]

                  4 Conclusion, 706

 

            936  0 e p3 & ALL(b):[b e p3 => b+1 e p3]

                  Join, 705, 935

 

            937  ALL(b):[b e n => b e p3]

                  Detach, 657, 936

 

                  938  y e n

                        Premise

 

                  939  y e n => y e p3

                        U Spec, 937

 

                  940  y e p3

                        Detach, 939, 938

 

                  941  y e p3 <=> y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                        U Spec, 646

 

                  942  [y e p3 => y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]]

                 & [y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d] => y e p3]

                        Iff-And, 941

 

                  943  y e p3 => y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                        Split, 942

 

                  944  y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d] => y e p3

                        Split, 942

 

                  945  y e n & ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                        Detach, 943, 940

 

                  946  y e n

                        Split, 945

 

                  947  ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                        Split, 945

 

            948  ALL(b):[b e n

             => ALL(c):ALL(d):[(x,b,c) e exp & (x,b,d) e exp => c=d]]

                  4 Conclusion, 938

 

      949  ALL(a):[a e n

         => ALL(b):[b e n

         => ALL(c):ALL(d):[(a,b,c) e exp & (a,b,d) e exp => c=d]]]

            4 Conclusion, 642

 

            950  (x,y,z1) e exp & (x,y,z2) e exp

                  Premise

 

            951  (x,y,z1) e exp

                  Split, 950

 

            952  (x,y,z2) e exp

                  Split, 950

 

            953  ALL(b):ALL(c):[(x,b,c) e exp => x e n & b e n & c e n & (x,b,c) e n3]

                  U Spec, 44

 

            954  ALL(c):[(x,y,c) e exp => x e n & y e n & c e n & (x,y,c) e n3]

                  U Spec, 953

 

            955  (x,y,z1) e exp => x e n & y e n & z1 e n & (x,y,z1) e n3

                  U Spec, 954

 

            956  x e n & y e n & z1 e n & (x,y,z1) e n3

                  Detach, 955, 951

 

            957  x e n

                  Split, 956

 

            958  y e n

                  Split, 956

 

            959  z1 e n

                  Split, 956

 

            960  (x,y,z1) e n3

                  Split, 956

 

            961  (x,y,z2) e exp => x e n & y e n & z2 e n & (x,y,z2) e n3

                  U Spec, 954

 

            962  x e n & y e n & z2 e n & (x,y,z2) e n3

                  Detach, 961, 952

 

            963  x e n

                  Split, 962

 

            964  y e n

                  Split, 962

 

            965  z2 e n

                  Split, 962

 

            966  (x,y,z2) e n3

                  Split, 962

 

            967  x e n

             => ALL(b):[b e n

             => ALL(c):ALL(d):[(x,b,c) e exp & (x,b,d) e exp => c=d]]

                  U Spec, 949

 

            968  ALL(b):[b e n

             => ALL(c):ALL(d):[(x,b,c) e exp & (x,b,d) e exp => c=d]]

                  Detach, 967, 963

 

            969  y e n

             => ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                  U Spec, 968

 

            970  ALL(c):ALL(d):[(x,y,c) e exp & (x,y,d) e exp => c=d]

                  Detach, 969, 964

 

            971  ALL(d):[(x,y,z1) e exp & (x,y,d) e exp => z1=d]

                  U Spec, 970

 

            972  (x,y,z1) e exp & (x,y,z2) e exp => z1=z2

                  U Spec, 971

 

            973  z1=z2

                  Detach, 972, 950

 

    Functionality - Part 3

 

      974  ALL(c1):ALL(c2):ALL(d1):ALL(d2):[(c1,c2,d1) e exp & (c1,c2,d2) e exp => d1=d2]

            4 Conclusion, 950

 

      975  ALL(c1):ALL(c2):ALL(d):[(c1,c2,d) e exp => c1 e n & c2 e n & d e n]

         & ALL(a):ALL(b):[a e n & b e n => EXIST(c):[c e n & (a,b,c) e exp]]

            Join, 175, 337

 

      976  ALL(c1):ALL(c2):ALL(d):[(c1,c2,d) e exp => c1 e n & c2 e n & d e n]

         & ALL(a):ALL(b):[a e n & b e n => EXIST(c):[c e n & (a,b,c) e exp]]

         & ALL(c1):ALL(c2):ALL(d1):ALL(d2):[(c1,c2,d1) e exp & (c1,c2,d2) e exp => d1=d2]

            Join, 975, 974

 

   

    exp is a function!

   

    As Required:

 

      977  ALL(c1):ALL(c2):ALL(d):[c1 e n & c2 e n & d e n => [d=exp(c1,c2) <=> (c1,c2,d) e exp]]

            Detach, 163, 976

 

            978  t e n & u e n

                  Premise

 

            979  ALL(b):[t e n & b e n => EXIST(c):[c e n & (t,b,c) e exp]]

                  U Spec, 337

 

            980  t e n & u e n => EXIST(c):[c e n & (t,u,c) e exp]

                  U Spec, 979

 

            981  EXIST(c):[c e n & (t,u,c) e exp]

                  Detach, 980, 978

 

            982  v e n & (t,u,v) e exp

                  E Spec, 981

 

            983  v e n

                  Split, 982

 

            984  (t,u,v) e exp

                  Split, 982

 

            985  ALL(c2):ALL(d):[t e n & c2 e n & d e n => [d=exp(t,c2) <=> (t,c2,d) e exp]]

                  U Spec, 977

 

            986  ALL(d):[t e n & u e n & d e n => [d=exp(t,u) <=> (t,u,d) e exp]]

                  U Spec, 985

 

            987  t e n & u e n & v e n => [v=exp(t,u) <=> (t,u,v) e exp]

                  U Spec, 986

 

            988  t e n & u e n & v e n

                  Join, 978, 983

 

            989  v=exp(t,u) <=> (t,u,v) e exp

                  Detach, 987, 988

 

            990  [v=exp(t,u) => (t,u,v) e exp]

             & [(t,u,v) e exp => v=exp(t,u)]

                  Iff-And, 989

 

            991  v=exp(t,u) => (t,u,v) e exp

                  Split, 990

 

            992  (t,u,v) e exp => v=exp(t,u)

                  Split, 990

 

            993  v=exp(t,u)

                  Detach, 992, 984

 

            994  exp(t,u) e n

                  Substitute, 993, 983

 

    As Required:

 

      995  ALL(a):ALL(b):[a e n & b e n => exp(a,b) e n]

            4 Conclusion, 978

 

      996  ALL(c2):ALL(d):[0 e n & c2 e n & d e n => [d=exp(0,c2) <=> (0,c2,d) e exp]]

            U Spec, 977

 

      997  ALL(d):[0 e n & 0 e n & d e n => [d=exp(0,0) <=> (0,0,d) e exp]]

            U Spec, 996

 

      998  0 e n & 0 e n & x0 e n => [x0=exp(0,0) <=> (0,0,x0) e exp]

            U Spec, 997

 

      999  0 e n & 0 e n

            Join, 3, 3

 

      1000 0 e n & 0 e n & x0 e n

            Join, 999, 11

 

      1001 x0=exp(0,0) <=> (0,0,x0) e exp

            Detach, 998, 1000

 

      1002 [x0=exp(0,0) => (0,0,x0) e exp]

         & [(0,0,x0) e exp => x0=exp(0,0)]

            Iff-And, 1001

 

      1003 x0=exp(0,0) => (0,0,x0) e exp

            Split, 1002

 

      1004 (0,0,x0) e exp => x0=exp(0,0)

            Split, 1002

 

      1005 x0=exp(0,0)

            Detach, 1004, 66

 

    As Required:

 

      1006 exp(0,0)=x0

            Sym, 1005

 

            1007 t e n

                  Premise

 

                  1008 ~t=0

                        Premise

 

                  1009 t e n => [~t=0 => (t,0,1) e exp]

                        U Spec, 97

 

                  1010 ~t=0 => (t,0,1) e exp

                        Detach, 1009, 1007

 

                  1011 (t,0,1) e exp

                        Detach, 1010, 1008

 

                  1012 ALL(c2):ALL(d):[t e n & c2 e n & d e n => [d=exp(t,c2) <=> (t,c2,d) e exp]]

                        U Spec, 977

 

                  1013 ALL(d):[t e n & 0 e n & d e n => [d=exp(t,0) <=> (t,0,d) e exp]]

                        U Spec, 1012

 

                  1014 t e n & 0 e n & 1 e n => [1=exp(t,0) <=> (t,0,1) e exp]

                        U Spec, 1013

 

                  1015 t e n & 0 e n

                        Join, 1007, 3

 

                  1016 t e n & 0 e n & 1 e n

                        Join, 1015, 7

 

                  1017 1=exp(t,0) <=> (t,0,1) e exp

                        Detach, 1014, 1016

 

                  1018 [1=exp(t,0) => (t,0,1) e exp]

                 & [(t,0,1) e exp => 1=exp(t,0)]

                        Iff-And, 1017

 

                  1019 1=exp(t,0) => (t,0,1) e exp

                        Split, 1018

 

                  1020 (t,0,1) e exp => 1=exp(t,0)

                        Split, 1018

 

                  1021 1=exp(t,0)

                        Detach, 1020, 1011

 

                  1022 exp(t,0)=1

                        Sym, 1021

 

            1023 ~t=0 => exp(t,0)=1

                  4 Conclusion, 1008

 

    As Required:

 

      1024 ALL(a):[a e n => [~a=0 => exp(a,0)=1]]

            4 Conclusion, 1007

 

            1025 t e n & u e n

                  Premise

 

            1026 t e n

                  Split, 1025

 

            1027 u e n

                  Split, 1025

 

            1028 ALL(b):[t e n & b e n => EXIST(c):[c e n & (t,b,c) e exp]]

                  U Spec, 337

 

            1029 t e n & u e n => EXIST(c):[c e n & (t,u,c) e exp]

                  U Spec, 1028

 

            1030 EXIST(c):[c e n & (t,u,c) e exp]

                  Detach, 1029, 1025

 

            1031 v e n & (t,u,v) e exp

                  E Spec, 1030

 

            1032 v e n

                  Split, 1031

 

            1033 (t,u,v) e exp

                  Split, 1031

 

            1034 ALL(c2):ALL(d):[t e n & c2 e n & d e n => [d=exp(t,c2) <=> (t,c2,d) e exp]]

                  U Spec, 977

 

            1035 ALL(d):[t e n & u e n & d e n => [d=exp(t,u) <=> (t,u,d) e exp]]

                  U Spec, 1034

 

            1036 t e n & u e n & v e n => [v=exp(t,u) <=> (t,u,v) e exp]

                  U Spec, 1035

 

            1037 t e n & u e n & v e n

                  Join, 1025, 1032

 

            1038 v=exp(t,u) <=> (t,u,v) e exp

                  Detach, 1036, 1037

 

            1039 [v=exp(t,u) => (t,u,v) e exp]

             & [(t,u,v) e exp => v=exp(t,u)]

                  Iff-And, 1038

 

            1040 v=exp(t,u) => (t,u,v) e exp

                  Split, 1039

 

            1041 (t,u,v) e exp => v=exp(t,u)

                  Split, 1039

 

            1042 v=exp(t,u)

                  Detach, 1041, 1033

 

            1043 ALL(b):ALL(c):[(t,b,c) e exp => (t,b+1,c*t) e exp]

                  U Spec, 155

 

            1044 ALL(c):[(t,u,c) e exp => (t,u+1,c*t) e exp]

                  U Spec, 1043

 

            1045 (t,u,v) e exp => (t,u+1,v*t) e exp

                  U Spec, 1044

 

            1046 (t,u+1,v*t) e exp

                  Detach, 1045, 1033

 

            1047 ALL(c2):ALL(d):[t e n & c2 e n & d e n => [d=exp(t,c2) <=> (t,c2,d) e exp]]

                  U Spec, 977

 

            1048 ALL(d):[t e n & u+1 e n & d e n => [d=exp(t,u+1) <=> (t,u+1,d) e exp]]

                  U Spec, 1047

 

            1049 t e n & u+1 e n & v*t e n => [v*t=exp(t,u+1) <=> (t,u+1,v*t) e exp]

                  U Spec, 1048

 

            1050 ALL(b):[u e n & b e n => u+b e n]

                  U Spec, 9

 

            1051 u e n & 1 e n => u+1 e n

                  U Spec, 1050

 

            1052 u e n & 1 e n

                  Join, 1027, 7

 

            1053 u+1 e n

                  Detach, 1051, 1052

 

            1054 ALL(b):[v e n & b e n => v*b e n]

                  U Spec, 10

 

            1055 v e n & t e n => v*t e n

                  U Spec, 1054

 

            1056 v e n & t e n

                  Join, 1032, 1026

 

            1057 v*t e n

                  Detach, 1055, 1056

 

            1058 t e n & u+1 e n

                  Join, 1026, 1053

 

            1059 t e n & u+1 e n & v*t e n

                  Join, 1058, 1057

 

            1060 v*t=exp(t,u+1) <=> (t,u+1,v*t) e exp

                  Detach, 1049, 1059

 

            1061 [v*t=exp(t,u+1) => (t,u+1,v*t) e exp]

             & [(t,u+1,v*t) e exp => v*t=exp(t,u+1)]

                  Iff-And, 1060

 

            1062 v*t=exp(t,u+1) => (t,u+1,v*t) e exp

                  Split, 1061

 

            1063 (t,u+1,v*t) e exp => v*t=exp(t,u+1)

                  Split, 1061

 

            1064 v*t=exp(t,u+1)

                  Detach, 1063, 1046

 

            1065 exp(t,u)*t=exp(t,u+1)

                  Substitute, 1042, 1064

 

            1066 exp(t,u+1)=exp(t,u)*t

                  Sym, 1065

 

      1067 ALL(a):ALL(b):[a e n & b e n => exp(a,b+1)=exp(a,b)*a]

            4 Conclusion, 1025

 

      1068 ALL(a):ALL(b):[a e n & b e n => exp(a,b) e n]

         & exp(0,0)=x0

            Join, 995, 1006

 

      1069 ALL(a):ALL(b):[a e n & b e n => exp(a,b) e n]

         & exp(0,0)=x0

         & ALL(a):[a e n => [~a=0 => exp(a,0)=1]]

            Join, 1068, 1024

 

      1070 ALL(a):ALL(b):[a e n & b e n => exp(a,b) e n]

         & exp(0,0)=x0

         & ALL(a):[a e n => [~a=0 => exp(a,0)=1]]

         & ALL(a):ALL(b):[a e n & b e n => exp(a,b+1)=exp(a,b)*a]

            Join, 1069, 1067

 

As Required:

 

1071 ALL(x0):[x0 e n

    => EXIST(exp):[ALL(a):ALL(b):[a e n & b e n => exp(a,b) e n]

    & exp(0,0)=x0

    & ALL(a):[a e n => [~a=0 => exp(a,0)=1]]

    & ALL(a):ALL(b):[a e n & b e n => exp(a,b+1)=exp(a,b)*a]]]

      4 Conclusion, 11