Thm* m,n,x: . nnsub(m;n) = x  m = n+x m n & x 0 | [sub_right_eq] |
Thm* m,n,x: . m = nnsub(n;x)  m+x = n m 0 & n x | [sub_left_eq] |
Thm* m,n,x: . x<nnsub(m;n)  n+x<m | [sub_right_greater] |
Thm* m,n,x: . nnsub(n;x)<m  n<m+x & 0<m | [sub_left_greater] |
Thm* m,n,x: . x nnsub(m;n)  n+x m x 0 | [sub_right_greater_eq] |
Thm* m,n,x: . nnsub(n;x) m  n m+x | [sub_left_greater_eq] |
Thm* m,n,x: . nnsub(m;n)<x  m<n+x & 0<x | [sub_right_less] |
Thm* m,n,x: . m<nnsub(n;x)  m+x<n | [sub_left_less] |
Thm* m,n,x: . nnsub(m;n) x  m n+x | [sub_right_less_eq] |
Thm* m,n,x: . m nnsub(n;x)  m+x n m 0 | [sub_left_less_eq] |
Thm* m,n: . nnsub(m;n)+1 = if m n then 0+1 else nnsub(m+1;n) fi | [sub_left_suc] |
Thm* m,n,x: . nnsub(nnsub(m;n);x) = nnsub(m;n+x) | [sub_right_sub] |
Thm* m,n,x: . nnsub(m;nnsub(n;x)) = if n x then m else nnsub(m+x;n) fi | [sub_left_sub] |
Thm* m,n,x: . nnsub(m;n)+x = if m n then x else nnsub(m+x;n) fi | [sub_right_add] |
Thm* m,n,x: . m+nnsub(n;x) = if n x then m else nnsub(m+n;x) fi | [sub_left_add] |