theorem zleasymb (a b: nat): $ a = b <-> a <=Z b /\ b <=Z a $;
    
      
        | Step | Hyp | Ref | Expression | 
|---|
        
          | 1 |  | bitr3 | (a -Z b = 0 <-> a = b) -> (a -Z b = 0 <-> a <=Z b /\ b <=Z a) -> (a = b <-> a <=Z b /\ b <=Z a) | 
        
          | 2 |  | zsubeq0 | a -Z b = 0 <-> a = b | 
        
          | 3 | 1, 2 | ax_mp | (a -Z b = 0 <-> a <=Z b /\ b <=Z a) -> (a = b <-> a <=Z b /\ b <=Z a) | 
        
          | 4 |  | bitr3 | (zfst (a -Z b) = 0 /\ zsnd (a -Z b) = 0 <-> a -Z b = 0) ->
  (zfst (a -Z b) = 0 /\ zsnd (a -Z b) = 0 <-> a <=Z b /\ b <=Z a) ->
  (a -Z b = 0 <-> a <=Z b /\ b <=Z a) | 
        
          | 5 |  | zfstsndeq0 | zfst (a -Z b) = 0 /\ zsnd (a -Z b) = 0 <-> a -Z b = 0 | 
        
          | 6 | 4, 5 | ax_mp | (zfst (a -Z b) = 0 /\ zsnd (a -Z b) = 0 <-> a <=Z b /\ b <=Z a) -> (a -Z b = 0 <-> a <=Z b /\ b <=Z a) | 
        
          | 7 |  | bitr | (zfst (a -Z b) = 0 /\ zsnd (a -Z b) = 0 <-> a -Z b <=Z 0 /\ 0 <=Z a -Z b) ->
  (a -Z b <=Z 0 /\ 0 <=Z a -Z b <-> a <=Z b /\ b <=Z a) ->
  (zfst (a -Z b) = 0 /\ zsnd (a -Z b) = 0 <-> a <=Z b /\ b <=Z a) | 
        
          | 8 |  | aneq | (zfst (a -Z b) = 0 <-> a -Z b <=Z 0) -> (zsnd (a -Z b) = 0 <-> 0 <=Z a -Z b) -> (zfst (a -Z b) = 0 /\ zsnd (a -Z b) = 0 <-> a -Z b <=Z 0 /\ 0 <=Z a -Z b) | 
        
          | 9 |  | zfsteq0 | zfst (a -Z b) = 0 <-> a -Z b <=Z 0 | 
        
          | 10 | 8, 9 | ax_mp | (zsnd (a -Z b) = 0 <-> 0 <=Z a -Z b) -> (zfst (a -Z b) = 0 /\ zsnd (a -Z b) = 0 <-> a -Z b <=Z 0 /\ 0 <=Z a -Z b) | 
        
          | 11 |  | zsndeq0 | zsnd (a -Z b) = 0 <-> 0 <=Z a -Z b | 
        
          | 12 | 10, 11 | ax_mp | zfst (a -Z b) = 0 /\ zsnd (a -Z b) = 0 <-> a -Z b <=Z 0 /\ 0 <=Z a -Z b | 
        
          | 13 | 7, 12 | ax_mp | (a -Z b <=Z 0 /\ 0 <=Z a -Z b <-> a <=Z b /\ b <=Z a) -> (zfst (a -Z b) = 0 /\ zsnd (a -Z b) = 0 <-> a <=Z b /\ b <=Z a) | 
        
          | 14 |  | aneq | (a -Z b <=Z 0 <-> a <=Z b) -> (0 <=Z a -Z b <-> b <=Z a) -> (a -Z b <=Z 0 /\ 0 <=Z a -Z b <-> a <=Z b /\ b <=Z a) | 
        
          | 15 |  | zlesub0 | a -Z b <=Z 0 <-> a <=Z b | 
        
          | 16 | 14, 15 | ax_mp | (0 <=Z a -Z b <-> b <=Z a) -> (a -Z b <=Z 0 /\ 0 <=Z a -Z b <-> a <=Z b /\ b <=Z a) | 
        
          | 17 |  | zle0sub | 0 <=Z a -Z b <-> b <=Z a | 
        
          | 18 | 16, 17 | ax_mp | a -Z b <=Z 0 /\ 0 <=Z a -Z b <-> a <=Z b /\ b <=Z a | 
        
          | 19 | 13, 18 | ax_mp | zfst (a -Z b) = 0 /\ zsnd (a -Z b) = 0 <-> a <=Z b /\ b <=Z a | 
        
          | 20 | 6, 19 | ax_mp | a -Z b = 0 <-> a <=Z b /\ b <=Z a | 
        
          | 21 | 3, 20 | ax_mp | a = b <-> a <=Z b /\ b <=Z a | 
      
    
    Axiom use
    axs_prop_calc
     (ax_1,
      ax_2,
      ax_3,
      ax_mp,
      itru),
    
axs_pred_calc
     (ax_gen,
      ax_4,
      ax_5,
      ax_6,
      ax_7,
      ax_10,
      ax_11,
      ax_12),
    
axs_set
     (elab,
      ax_8),
    
axs_the
     (theid,
      the0),
    
axs_peano
     (peano1,
      peano2,
      peano5,
      addeq,
      muleq,
      add0,
      addS,
      mul0,
      mulS)