src/HOL/Complex/NSInduct.thy
author nipkow
Sun, 25 Jan 2004 00:42:22 +0100
changeset 14360 e654599b114e
parent 13957 10dbf16be15f
child 14387 e96d5c42c4b0
permissions -rw-r--r--
Added an exception handler and error msg.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
13957
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
     1
(*  Title:       NSInduct.thy
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
     2
    Author:      Jacques D. Fleuriot
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
     3
    Copyright:   2001  University of Edinburgh
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
     4
    Description: Nonstandard characterization of induction etc.
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
     5
*)
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
     6
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
     7
NSInduct =  ComplexArith0 + 
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
     8
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
     9
constdefs
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    10
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    11
  starPNat :: (nat => bool) => hypnat => bool  ("*pNat* _" [80] 80)
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    12
  "*pNat* P == (%x. EX X. (X: Rep_hypnat(x) & 
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    13
                      {n. P(X n)} : FreeUltrafilterNat))" 
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    14
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    15
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    16
  starPNat2 :: (nat => nat => bool) => hypnat =>hypnat => bool  ("*pNat2* _" [80] 80)
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    17
  "*pNat2* P == (%x y. EX X. EX Y. (X: Rep_hypnat(x) & Y: Rep_hypnat(y) & 
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    18
                      {n. P(X n) (Y n)} : FreeUltrafilterNat))" 
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    19
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    20
  hSuc :: hypnat => hypnat
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    21
  "hSuc n == n + 1"
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    22
    
10dbf16be15f new session Complex for the complex numbers
paulson
parents:
diff changeset
    23
end