/*
 * @(#)$Id: greaterzero,v 1.1 1996/06/12 10:10:51 img Exp $
 *
 * $Log: greaterzero,v $
 * Revision 1.1  1996/06/12 10:10:51  img
 * This used to be two equations from eqn: it is more properly a thm.
 *
 */

problem([]==>x:pnat=>greater(x,0)<=>x=0 in pnat=>void,
dequantify then simplify,lambda(x,_13935),
[problem([x:pnat]==> (pnat_eq(x,0,void,{true})=>x=0 in pnat=>void)# (x=0 in pnat=>void)=>pnat_eq(x,0,void,{true}),
 elim(x)then simplify,p_ind(x,_14002,[v0,v1,_14008]),
 [problem([x:pnat]==> (void=>0=0 in pnat=>void)# (0=0 in pnat=>void)=>void,
  repeat intro,lambda(v0,lambda(v1,v0))&lambda(v0,_14068),
  [problem([x:pnat,v0:0=0 in pnat=>void]==>void,
   elim(v0)then repeat intro,su(v1,[v0 of axiom],[v1]),
   [
   ]) ext _14068
  ]) ext _14002,
  problem([x:pnat,v0:pnat,v1: (pnat_eq(v0,0,void,{true})=>v0=0 in pnat=>void)# (v0=0 in pnat=>void)=>pnat_eq(v0,0,void,{true})]==> (int=>s(v0)=0 in pnat=>void)# (s(v0)=0 in pnat=>void)=>int,
  repeat intro,lambda(v2,lambda(v3,_14229))&lambda(v2,_14232),
  [problem([x:pnat,v0:pnat,v1: (pnat_eq(v0,0,void,{true})=>v0=0 in pnat=>void)# (v0=0 in pnat=>void)=>pnat_eq(v0,0,void,{true}),v2:int,v3:s(v0)=0 in pnat]==>void,
   clam_arith(v3:s(v0)=0 in pnat),su(su(su(any(v6),[v5 of v3],[v6]),[v4 of v0],[v5]),[term_of(arith1)],[v4]),
   [
   ]) ext _14229,
   problem([x:pnat,v0:pnat,v1: (pnat_eq(v0,0,void,{true})=>v0=0 in pnat=>void)# (v0=0 in pnat=>void)=>pnat_eq(v0,0,void,{true}),v2:s(v0)=0 in pnat=>void]==>int,
   intro(0),0,
   [
   ]) ext _14232
  ]) ext _14008
 ]) ext _13935
]).
