src/HOL/Induct/PropLog.thy
changeset 21404 eb85850d3eb7
parent 20503 503ac4c5ef91
child 23746 a455e69c31cc
equal deleted inserted replaced
21403:dd58f13a8eb4 21404:eb85850d3eb7
    28 
    28 
    29 consts
    29 consts
    30   thms  :: "'a pl set => 'a pl set"
    30   thms  :: "'a pl set => 'a pl set"
    31 
    31 
    32 abbreviation
    32 abbreviation
    33   thm_rel :: "['a pl set, 'a pl] => bool"   (infixl "|-" 50)
    33   thm_rel :: "['a pl set, 'a pl] => bool"   (infixl "|-" 50) where
    34   "H |- p == p \<in> thms H"
    34   "H |- p == p \<in> thms H"
    35 
    35 
    36 inductive "thms(H)"
    36 inductive "thms(H)"
    37   intros
    37   intros
    38   H [intro]:  "p\<in>H ==> H |- p"
    38   H [intro]:  "p\<in>H ==> H |- p"
    71   For every valuation, if all elements of @{text H} are true then so
    71   For every valuation, if all elements of @{text H} are true then so
    72   is @{text p}.
    72   is @{text p}.
    73 *}
    73 *}
    74 
    74 
    75 definition
    75 definition
    76   sat :: "['a pl set, 'a pl] => bool"   (infixl "|=" 50)
    76   sat :: "['a pl set, 'a pl] => bool"   (infixl "|=" 50) where
    77     "H |= p  =  (\<forall>tt. (\<forall>q\<in>H. tt[[q]]) --> tt[[p]])"
    77     "H |= p  =  (\<forall>tt. (\<forall>q\<in>H. tt[[q]]) --> tt[[p]])"
    78 
    78 
    79 
    79 
    80 subsection {* Proof theory of propositional logic *}
    80 subsection {* Proof theory of propositional logic *}
    81 
    81