src/HOL/Complex/NSInduct.thy
author paulson
Mon, 05 May 2003 18:22:31 +0200
changeset 13957 10dbf16be15f
child 14387 e96d5c42c4b0
permissions -rw-r--r--
new session Complex for the complex numbers

(*  Title:       NSInduct.thy
    Author:      Jacques D. Fleuriot
    Copyright:   2001  University of Edinburgh
    Description: Nonstandard characterization of induction etc.
*)

NSInduct =  ComplexArith0 + 

constdefs

  starPNat :: (nat => bool) => hypnat => bool  ("*pNat* _" [80] 80)
  "*pNat* P == (%x. EX X. (X: Rep_hypnat(x) & 
                      {n. P(X n)} : FreeUltrafilterNat))" 


  starPNat2 :: (nat => nat => bool) => hypnat =>hypnat => bool  ("*pNat2* _" [80] 80)
  "*pNat2* P == (%x y. EX X. EX Y. (X: Rep_hypnat(x) & Y: Rep_hypnat(y) & 
                      {n. P(X n) (Y n)} : FreeUltrafilterNat))" 

  hSuc :: hypnat => hypnat
  "hSuc n == n + 1"
    
end