Structure res_quanTheory


Source File Identifier index Theory binding index

signature res_quanTheory =
sig
  type thm = Thm.thm
  
  (*  Theorems  *)
    val IN_BIGINTER_RES_FORALL : thm
    val IN_BIGUNION_RES_EXISTS : thm
    val NOT_RES_EXISTS : thm
    val NOT_RES_FORALL : thm
    val RES_ABSTRACT : thm
    val RES_ABSTRACT_EQUAL : thm
    val RES_ABSTRACT_EQUAL_EQ : thm
    val RES_ABSTRACT_IDEMPOT : thm
    val RES_ABSTRACT_UNIV : thm
    val RES_DISJ_EXISTS_DIST : thm
    val RES_EXISTS : thm
    val RES_EXISTS_ALT : thm
    val RES_EXISTS_BIGINTER : thm
    val RES_EXISTS_BIGUNION : thm
    val RES_EXISTS_DIFF : thm
    val RES_EXISTS_DISJ_DIST : thm
    val RES_EXISTS_EMPTY : thm
    val RES_EXISTS_EQUAL : thm
    val RES_EXISTS_F : thm
    val RES_EXISTS_NOT_EMPTY : thm
    val RES_EXISTS_NULL : thm
    val RES_EXISTS_REORDER : thm
    val RES_EXISTS_SUBSET : thm
    val RES_EXISTS_T : thm
    val RES_EXISTS_UNION : thm
    val RES_EXISTS_UNIQUE : thm
    val RES_EXISTS_UNIQUE_ALT : thm
    val RES_EXISTS_UNIQUE_ELIM : thm
    val RES_EXISTS_UNIQUE_EMPTY : thm
    val RES_EXISTS_UNIQUE_EXISTS : thm
    val RES_EXISTS_UNIQUE_F : thm
    val RES_EXISTS_UNIQUE_NOT_EMPTY : thm
    val RES_EXISTS_UNIQUE_NULL : thm
    val RES_EXISTS_UNIQUE_SING : thm
    val RES_EXISTS_UNIQUE_T : thm
    val RES_EXISTS_UNIQUE_UNIV : thm
    val RES_EXISTS_UNIV : thm
    val RES_FORALL : thm
    val RES_FORALL_BIGINTER : thm
    val RES_FORALL_BIGUNION : thm
    val RES_FORALL_CONJ_DIST : thm
    val RES_FORALL_DIFF : thm
    val RES_FORALL_DISJ_DIST : thm
    val RES_FORALL_EMPTY : thm
    val RES_FORALL_F : thm
    val RES_FORALL_FORALL : thm
    val RES_FORALL_NOT_EMPTY : thm
    val RES_FORALL_NULL : thm
    val RES_FORALL_REORDER : thm
    val RES_FORALL_SUBSET : thm
    val RES_FORALL_T : thm
    val RES_FORALL_UNION : thm
    val RES_FORALL_UNIQUE : thm
    val RES_FORALL_UNIV : thm
    val RES_SELECT : thm
    val RES_SELECT_EMPTY : thm
    val RES_SELECT_UNIV : thm
  
  val res_quan_grammars : type_grammar.grammar * term_grammar.grammar
(*
   [pred_set] Parent theory of "res_quan"
   
   [IN_BIGINTER_RES_FORALL]  Theorem
      
      ⊢ ∀x sos. x ∈ BIGINTER sos ⇔ ∀s::sos. x ∈ s
   
   [IN_BIGUNION_RES_EXISTS]  Theorem
      
      ⊢ ∀x sos. x ∈ BIGUNION sos ⇔ ∃s::sos. x ∈ s
   
   [NOT_RES_EXISTS]  Theorem
      
      ⊢ ∀P s. ¬(∃x::s. P x) ⇔ ∀x::s. ¬P x
   
   [NOT_RES_FORALL]  Theorem
      
      ⊢ ∀P s. ¬(∀x::s. P x) ⇔ ∃x::s. ¬P x
   
   [RES_ABSTRACT]  Theorem
      
      ⊢ ∀p m x. x ∈ p ⇒ RES_ABSTRACT p m x = m x
   
   [RES_ABSTRACT_EQUAL]  Theorem
      
      ⊢ ∀p m1 m2.
            (∀x. x ∈ p ⇒ m1 x = m2 x) ⇒
            RES_ABSTRACT p m1 = RES_ABSTRACT p m2
   
   [RES_ABSTRACT_EQUAL_EQ]  Theorem
      
      ⊢ ∀p m1 m2.
            RES_ABSTRACT p m1 = RES_ABSTRACT p m2 ⇔ ∀x. x ∈ p ⇒ m1 x = m2 x
   
   [RES_ABSTRACT_IDEMPOT]  Theorem
      
      ⊢ ∀p m. RES_ABSTRACT p (RES_ABSTRACT p m) = RES_ABSTRACT p m
   
   [RES_ABSTRACT_UNIV]  Theorem
      
      ⊢ ∀m. RES_ABSTRACT 𝕌(:α) m = m
   
   [RES_DISJ_EXISTS_DIST]  Theorem
      
      ⊢ ∀P Q R. (∃i::(λi. P i ∨ Q i). R i) ⇔ (∃i::P. R i) ∨ ∃i::Q. R i
   
   [RES_EXISTS]  Theorem
      
      ⊢ ∀P f. RES_EXISTS P f ⇔ ∃x. x ∈ P ∧ f x
   
   [RES_EXISTS_ALT]  Theorem
      
      ⊢ ∀p m. RES_EXISTS p m ⇔ RES_SELECT p m ∈ p ∧ m (RES_SELECT p m)
   
   [RES_EXISTS_BIGINTER]  Theorem
      
      ⊢ ∀P sos. (∃x::BIGINTER sos. P x) ⇔ ∃x. (∀s::sos. x ∈ s) ∧ P x
   
   [RES_EXISTS_BIGUNION]  Theorem
      
      ⊢ ∀P sos. (∃x::BIGUNION sos. P x) ⇔ ∃(s::sos) (x::s). P x
   
   [RES_EXISTS_DIFF]  Theorem
      
      ⊢ ∀P s t x. (∃x::s DIFF t. P x) ⇔ ∃x::s. x ∉ t ∧ P x
   
   [RES_EXISTS_DISJ_DIST]  Theorem
      
      ⊢ ∀P Q R. (∃i::P. Q i ∨ R i) ⇔ (∃i::P. Q i) ∨ ∃i::P. R i
   
   [RES_EXISTS_EMPTY]  Theorem
      
      ⊢ ∀p. ¬RES_EXISTS ∅ p
   
   [RES_EXISTS_EQUAL]  Theorem
      
      ⊢ ∀P j. (∃i:: $= j. P i) ⇔ P j
   
   [RES_EXISTS_F]  Theorem
      
      ⊢ ∀P s x. ¬∃s::x. F
   
   [RES_EXISTS_NOT_EMPTY]  Theorem
      
      ⊢ ∀P s. RES_EXISTS s P ⇒ s ≠ ∅
   
   [RES_EXISTS_NULL]  Theorem
      
      ⊢ ∀p m. (∃x::p. m) ⇔ p ≠ ∅ ∧ m
   
   [RES_EXISTS_REORDER]  Theorem
      
      ⊢ ∀P Q R. (∃(i::P) (j::Q). R i j) ⇔ ∃(j::Q) (i::P). R i j
   
   [RES_EXISTS_SUBSET]  Theorem
      
      ⊢ ∀P s t. s ⊆ t ⇒ RES_EXISTS s P ⇒ RES_EXISTS t P
   
   [RES_EXISTS_T]  Theorem
      
      ⊢ ∀P s x. (∃x::s. T) ⇔ s ≠ ∅
   
   [RES_EXISTS_UNION]  Theorem
      
      ⊢ ∀P s t. RES_EXISTS (s ∪ t) P ⇔ RES_EXISTS s P ∨ RES_EXISTS t P
   
   [RES_EXISTS_UNIQUE]  Theorem
      
      ⊢ ∀P f.
            RES_EXISTS_UNIQUE P f ⇔
            (∃x::P. f x) ∧ ∀x y::P. f x ∧ f y ⇒ x = y
   
   [RES_EXISTS_UNIQUE_ALT]  Theorem
      
      ⊢ ∀p m. RES_EXISTS_UNIQUE p m ⇔ ∃x::p. m x ∧ ∀y::p. m y ⇒ y = x
   
   [RES_EXISTS_UNIQUE_ELIM]  Theorem
      
      ⊢ ∀P s. (∃!x::s. P x) ⇔ ∃!x. x ∈ s ∧ P x
   
   [RES_EXISTS_UNIQUE_EMPTY]  Theorem
      
      ⊢ ∀p. ¬RES_EXISTS_UNIQUE ∅ p
   
   [RES_EXISTS_UNIQUE_EXISTS]  Theorem
      
      ⊢ ∀P s. RES_EXISTS_UNIQUE P s ⇒ RES_EXISTS P s
   
   [RES_EXISTS_UNIQUE_F]  Theorem
      
      ⊢ ∀P s x. ¬∃!x::s. F
   
   [RES_EXISTS_UNIQUE_NOT_EMPTY]  Theorem
      
      ⊢ ∀P s. RES_EXISTS_UNIQUE s P ⇒ s ≠ ∅
   
   [RES_EXISTS_UNIQUE_NULL]  Theorem
      
      ⊢ ∀p m. (∃!x::p. m) ⇔ (∃x. p = {x}) ∧ m
   
   [RES_EXISTS_UNIQUE_SING]  Theorem
      
      ⊢ ∀P s x. (∃!x::s. T) ⇔ ∃y. s = {y}
   
   [RES_EXISTS_UNIQUE_T]  Theorem
      
      ⊢ ∀P s x. (∃!x::s. T) ⇔ ∃!x. x ∈ s
   
   [RES_EXISTS_UNIQUE_UNIV]  Theorem
      
      ⊢ ∀p. RES_EXISTS_UNIQUE 𝕌(:α) p ⇔ $?! p
   
   [RES_EXISTS_UNIV]  Theorem
      
      ⊢ ∀p. RES_EXISTS 𝕌(:α) p ⇔ $? p
   
   [RES_FORALL]  Theorem
      
      ⊢ ∀P f. RES_FORALL P f ⇔ ∀x. x ∈ P ⇒ f x
   
   [RES_FORALL_BIGINTER]  Theorem
      
      ⊢ ∀P sos. (∀x::BIGINTER sos. P x) ⇔ ∀x. (∀s::sos. x ∈ s) ⇒ P x
   
   [RES_FORALL_BIGUNION]  Theorem
      
      ⊢ ∀P sos. (∀x::BIGUNION sos. P x) ⇔ ∀(s::sos) (x::s). P x
   
   [RES_FORALL_CONJ_DIST]  Theorem
      
      ⊢ ∀P Q R. (∀i::P. Q i ∧ R i) ⇔ (∀i::P. Q i) ∧ ∀i::P. R i
   
   [RES_FORALL_DIFF]  Theorem
      
      ⊢ ∀P s t x. (∀x::s DIFF t. P x) ⇔ ∀x::s. x ∉ t ⇒ P x
   
   [RES_FORALL_DISJ_DIST]  Theorem
      
      ⊢ ∀P Q R. (∀i::(λj. P j ∨ Q j). R i) ⇔ (∀i::P. R i) ∧ ∀i::Q. R i
   
   [RES_FORALL_EMPTY]  Theorem
      
      ⊢ ∀p. RES_FORALL ∅ p
   
   [RES_FORALL_F]  Theorem
      
      ⊢ ∀P s x. (∀x::s. F) ⇔ s = ∅
   
   [RES_FORALL_FORALL]  Theorem
      
      ⊢ ∀P R x. (∀x (i::P). R i x) ⇔ ∀(i::P) x. R i x
   
   [RES_FORALL_NOT_EMPTY]  Theorem
      
      ⊢ ∀P s. ¬RES_FORALL s P ⇒ s ≠ ∅
   
   [RES_FORALL_NULL]  Theorem
      
      ⊢ ∀p m. (∀x::p. m) ⇔ p = ∅ ∨ m
   
   [RES_FORALL_REORDER]  Theorem
      
      ⊢ ∀P Q R. (∀(i::P) (j::Q). R i j) ⇔ ∀(j::Q) (i::P). R i j
   
   [RES_FORALL_SUBSET]  Theorem
      
      ⊢ ∀P s t. s ⊆ t ⇒ RES_FORALL t P ⇒ RES_FORALL s P
   
   [RES_FORALL_T]  Theorem
      
      ⊢ ∀P s x (x::s). T
   
   [RES_FORALL_UNION]  Theorem
      
      ⊢ ∀P s t. RES_FORALL (s ∪ t) P ⇔ RES_FORALL s P ∧ RES_FORALL t P
   
   [RES_FORALL_UNIQUE]  Theorem
      
      ⊢ ∀P j. (∀i:: $= j. P i) ⇔ P j
   
   [RES_FORALL_UNIV]  Theorem
      
      ⊢ ∀p. RES_FORALL 𝕌(:α) p ⇔ $! p
   
   [RES_SELECT]  Theorem
      
      ⊢ ∀P f. RES_SELECT P f = @x. x ∈ P ∧ f x
   
   [RES_SELECT_EMPTY]  Theorem
      
      ⊢ ∀p. RES_SELECT ∅ p = @x. F
   
   [RES_SELECT_UNIV]  Theorem
      
      ⊢ ∀p. RES_SELECT 𝕌(:α) p = $@ p
   
   
*)
end


Source File Identifier index Theory binding index

HOL 4, Kananaskis-13