src/HOL/Induct/Acc.thy
changeset 9101 b643f4d7b9e9
parent 7867 2efb66472812
child 9596 6d6bf351b2cc
equal deleted inserted replaced
9100:9e081c812338 9101:b643f4d7b9e9
     7 
     7 
     8 See Ch. Paulin-Mohring, Inductive Definitions in the System Coq.
     8 See Ch. Paulin-Mohring, Inductive Definitions in the System Coq.
     9 Research Report 92-49, LIP, ENS Lyon.  Dec 1992.
     9 Research Report 92-49, LIP, ENS Lyon.  Dec 1992.
    10 *)
    10 *)
    11 
    11 
    12 header {* The accessible part of a relation *};
    12 header {* The accessible part of a relation *}
    13 
    13 
    14 theory Acc = WF + Inductive:;
    14 theory Acc = Main:
    15 
    15 
    16 consts
    16 consts
    17   acc  :: "('a * 'a)set => 'a set"  -- {* accessible part *};
    17   acc  :: "('a * 'a)set => 'a set"  -- {* accessible part *}
    18 
    18 
    19 inductive "acc r"
    19 inductive "acc r"
    20   intrs
    20   intrs
    21     accI [rulify_prems]:
    21     accI [rulify_prems]:
    22       "ALL y. (y, x) : r --> y : acc r ==> x : acc r"
    22       "ALL y. (y, x) : r --> y : acc r ==> x : acc r"