Thm* all
Thm* ( k:hnum. all
Thm* ( k:hnum. ( n:hnum. implies
Thm* ( k:hnum. ( n:hnum. (lt(0,n)
Thm* ( k:hnum. ( n:hnum. ,exists
Thm* ( k:hnum. ( n:hnum. ,( r:hnum. exists
Thm* ( k:hnum. ( n:hnum. ,( r:hnum. ( q:hnum. and
Thm* ( k:hnum. ( n:hnum. ,( r:hnum. ( q:hnum. (equal(k,add(mult(q,n),r))
Thm* ( k:hnum. ( n:hnum. ,( r:hnum. ( q:hnum. ,lt(r,n))))))) | [hda] |
Thm* all
Thm* ( P:hnum  hbool. implies
Thm* ( P:hnum  hbool. (and
Thm* ( P:hnum  hbool. ((P(0)
Thm* ( P:hnum  hbool. (,all
Thm* ( P:hnum  hbool. (,( n:hnum. implies
Thm* ( P:hnum  hbool. (,( n:hnum. (all( m:hnum. implies(lt(m,n),P(m)))
Thm* ( P:hnum  hbool. (,( n:hnum. ,P(n))))
Thm* ( P:hnum  hbool. ,all( n:hnum. P(n)))) | [hgen_induction] |
Thm* all
Thm* ( P:hnum  hbool. implies
Thm* ( P:hnum  hbool. (exists( n:hnum. P(n))
Thm* ( P:hnum  hbool. ,exists
Thm* ( P:hnum  hbool. ,( n:hnum. and
Thm* ( P:hnum  hbool. ,( n:hnum. (P(n)
Thm* ( P:hnum  hbool. ,( n:hnum. ,all( m:hnum. implies(lt(m,n),not(P(m)))))))) | [hwop] |
Thm* all( n:hnum. all( m:hnum. implies(and(le(n,m),le(m,n)),equal(n,m)))) | [hless_equal_antisym] |
Thm* all
Thm* ( m:hnum. all
Thm* ( m:hnum. ( n:hnum. all
Thm* ( m:hnum. ( n:hnum. ( p:hnum. all
Thm* ( m:hnum. ( n:hnum. ( p:hnum. ( q:hnum. implies
Thm* ( m:hnum. ( n:hnum. ( p:hnum. ( q:hnum. (and(le(m,p),le(n,q))
Thm* ( m:hnum. ( n:hnum. ( p:hnum. ( q:hnum. ,le(add(m,n),add(p,q))))))) | [hless_eq_less_eq_mono] |
Thm* all
Thm* ( m:hnum. all
Thm* ( m:hnum. ( n:hnum. all( p:hnum. implies(and(le(m,n),le(n,p)),le(m,p))))) | [hless_eq_trans] |
Thm* all
Thm* ( m:hnum. all
Thm* ( m:hnum. ( n:hnum. implies
Thm* ( m:hnum. ( n:hnum. (and(lt(0,m),lt(0,n))
Thm* ( m:hnum. ( n:hnum. ,equal(equal(pre(m),pre(n)),equal(m,n))))) | [hinv_pre_eq] |
Thm* all
Thm* ( m:hnum. all
Thm* ( m:hnum. ( n:hnum. equal(equal(add(m,n),0),and(equal(m,0),equal(n,0))))) | [hadd_eq_0] |
Thm* all
Thm* ( m:hnum. all
Thm* ( m:hnum. ( n:hnum. and
Thm* ( m:hnum. ( n:hnum. (equal(mult(0,m),0)
Thm* ( m:hnum. ( n:hnum. ,and
Thm* ( m:hnum. ( n:hnum. ,(equal(mult(m,0),0)
Thm* ( m:hnum. ( n:hnum. ,,and
Thm* ( m:hnum. ( n:hnum. ,,(equal(mult(1,m),m)
Thm* ( m:hnum. ( n:hnum. ,,,and
Thm* ( m:hnum. ( n:hnum. ,,,(equal(mult(m,1),m)
Thm* ( m:hnum. ( n:hnum. ,,,,and
Thm* ( m:hnum. ( n:hnum. ,,,,(equal(mult(suc(m),n),add(mult(m,n),n))
Thm* ( m:hnum. ( n:hnum. ,,,,,equal(mult(m,suc(n)),add(m,mult(m,n)))))))))) | [hmult_clauses] |
Thm* all( m:hnum. all( n:hnum. not(and(lt(m,n),le(n,m))))) | [hless_eq_antisym] |
Thm* all
Thm* ( m:hnum. all( n:hnum. implies(and(not(lt(m,n)),not(equal(m,n))),lt(n,m)))) | [hless_cases_imp] |
Thm* all
Thm* ( m:hnum. all
Thm* ( m:hnum. ( n:hnum. implies
Thm* ( m:hnum. ( n:hnum. (and(lt(m,n),not(equal(n,suc(m))))
Thm* ( m:hnum. ( n:hnum. ,lt(suc(m),n)))) | [hless_not_suc] |
Thm* all
Thm* ( m:hnum. all
Thm* ( m:hnum. ( n:hnum. implies
Thm* ( m:hnum. ( n:hnum. (and(lt(m,n),not(equal(suc(m),n)))
Thm* ( m:hnum. ( n:hnum. ,lt(suc(m),n)))) | [hless_suc_eq_cor] |
Thm* 'a:S.
Thm* all
Thm* ( f:'a  hbool. all
Thm* ( f:'a  hbool. ( x1:'a. all
Thm* ( f:'a  hbool. ( x1:'a. ( x2:'a. implies
Thm* ( f:'a  hbool. ( x1:'a. ( x2:'a. (and(f(x1),not(f(x2)))
Thm* ( f:'a  hbool. ( x1:'a. ( x2:'a. ,not(equal(x1,x2)))))) | [hfun_eq_lemma] |
Thm* all( m:hnum. all( n:hnum. not(and(lt(m,n),lt(n,suc(m)))))) | [hless_less_suc] |
Thm* all( m:hnum. all( n:hnum. not(and(lt(m,n),lt(n,m))))) | [hless_antisym] |
Thm* all
Thm* ( m:hnum. all
Thm* ( m:hnum. ( n:hnum. all( p:hnum. implies(and(lt(m,n),lt(n,p)),lt(m,p))))) | [hless_trans] |
Thm* all( m:hnum. and(equal(sub(0,m),0),equal(sub(m,0),m))) | [hsub_0] |
Thm* all
Thm* ( n:hnum. all
Thm* ( n:hnum. ( m:hnum. and
Thm* ( n:hnum. ( m:hnum. (equal(add(0,m),m)
Thm* ( n:hnum. ( m:hnum. ,and
Thm* ( n:hnum. ( m:hnum. ,(equal(add(m,0),m)
Thm* ( n:hnum. ( m:hnum. ,,and
Thm* ( n:hnum. ( m:hnum. ,,(equal(add(suc(m),n),suc(add(m,n)))
Thm* ( n:hnum. ( m:hnum. ,,,equal(add(m,suc(n)),suc(add(m,n)))))))) | [hadd_clauses] |
Thm* all
Thm* ( n:hnum. implies
Thm* ( n:hnum. (lt(0,n)
Thm* ( n:hnum. ,all
Thm* ( n:hnum. ,( k:hnum. and
Thm* ( n:hnum. ,( k:hnum. (equal(k,add(mult(div(k,n),n),mod(k,n)))
Thm* ( n:hnum. ,( k:hnum. ,lt(mod(k,n),n))))) | [hdivision] |
Thm* and(equal(odd(0),f),all( n:hnum. equal(odd(suc(n)),not(odd(n))))) | [hodd_wd] |
Thm* and(equal(even(0),t),all( n:hnum. equal(even(suc(n)),not(even(n))))) | [heven_wd] |
Thm* and
Thm* (equal(fact(0),1)
Thm* ,all( n:hnum. equal(fact(suc(n)),mult(suc(n),fact(n))))) | [hfact_wd] |
Thm* and
Thm* (all( m:hnum. equal(exp(m,0),1))
Thm* ,all( m:hnum. all( n:hnum. equal(exp(m,suc(n)),mult(m,exp(m,n)))))) | [hexp_wd] |
Thm* and
Thm* (all( n:hnum. equal(mult(0,n),0))
Thm* ,all( m:hnum. all( n:hnum. equal(mult(suc(m),n),add(mult(m,n),n))))) | [hmult_wd] |
Thm* and
Thm* (all( m:hnum. equal(sub(0,m),0))
Thm* ,all
Thm* ,( m:hnum. all
Thm* ,( m:hnum. ( n:hnum. equal(sub(suc(m),n),cond(lt(m,n),0,suc(sub(m,n))))))) | [hsub_wd] |
Thm* and
Thm* (all( n:hnum. equal(add(0,n),n))
Thm* ,all( m:hnum. all( n:hnum. equal(add(suc(m),n),suc(add(m,n)))))) | [hadd_wd] |