Set Rewrite Rules: Difference between revisions
From Event-B
Jump to navigationJump to search
imported>Benoit Added rule SIMP_COMPSET_SUBSETEQ. |
imported>Benoit m Added stars to the automatic rules implemented in auto rewriter L2. |
||
Line 17: | Line 17: | ||
{{RRRow}}|*||{{Rulename|SIMP_SPECIAL_IMP_BFALSE_L}}||<math> \bfalse \limp P \;\;\defi\;\; \btrue </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_IMP_BFALSE_L}}||<math> \bfalse \limp P \;\;\defi\;\; \btrue </math>|| || A | ||
{{RRRow}}|*||{{Rulename|SIMP_MULTI_IMP}}||<math> P \limp P \;\;\defi\;\; \btrue </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_MULTI_IMP}}||<math> P \limp P \;\;\defi\;\; \btrue </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_MULTI_IMP_OR}}||<math> P \land \ldots \land Q \land \ldots \land R \limp Q \;\;\defi\;\; \btrue </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_MULTI_IMP_OR}}||<math> P \land \ldots \land Q \land \ldots \land R \limp Q \;\;\defi\;\; \btrue </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_MULTI_IMP_AND_NOT_R}}||<math> P \land \ldots \land Q \land \ldots \land R \limp \lnot\, Q \;\;\defi\;\; \lnot\,(P \land \ldots \land Q \land \ldots \land R) </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_MULTI_IMP_AND_NOT_R}}||<math> P \land \ldots \land Q \land \ldots \land R \limp \lnot\, Q \;\;\defi\;\; \lnot\,(P \land \ldots \land Q \land \ldots \land R) </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_MULTI_IMP_AND_NOT_L}}||<math> P \land \ldots \land \lnot\, Q \land \ldots \land R \limp Q \;\;\defi\;\; \lnot\,(P \land \ldots \land \lnot\, Q \land \ldots \land R) </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_MULTI_IMP_AND_NOT_L}}||<math> P \land \ldots \land \lnot\, Q \land \ldots \land R \limp Q \;\;\defi\;\; \lnot\,(P \land \ldots \land \lnot\, Q \land \ldots \land R) </math>|| || A | ||
{{RRRow}}|*||{{Rulename|SIMP_MULTI_EQV}}||<math> P \leqv P \;\;\defi\;\; \btrue </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_MULTI_EQV}}||<math> P \leqv P \;\;\defi\;\; \btrue </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_MULTI_EQV_NOT}}||<math> P \leqv \lnot\, P \;\;\defi\;\; \bfalse </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_MULTI_EQV_NOT}}||<math> P \leqv \lnot\, P \;\;\defi\;\; \bfalse </math>|| || A | ||
{{RRRow}}|*||{{Rulename|SIMP_SPECIAL_NOT_BTRUE}}||<math> \lnot\, \btrue \;\;\defi\;\; \bfalse </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_NOT_BTRUE}}||<math> \lnot\, \btrue \;\;\defi\;\; \bfalse </math>|| || A | ||
{{RRRow}}|*||{{Rulename|SIMP_SPECIAL_NOT_BFALSE}}||<math> \lnot\, \bfalse \;\;\defi\;\; \btrue </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_NOT_BFALSE}}||<math> \lnot\, \bfalse \;\;\defi\;\; \btrue </math>|| || A | ||
Line 47: | Line 47: | ||
{{RRRow}}|*||{{Rulename|SIMP_SPECIAL_EQUAL_TRUE}}||<math> \True = \False \;\;\defi\;\; \bfalse </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_EQUAL_TRUE}}||<math> \True = \False \;\;\defi\;\; \bfalse </math>|| || A | ||
{{RRRow}}|*||{{Rulename|SIMP_TYPE_SUBSETEQ}}||<math> S \subseteq \mathit{Ty} \;\;\defi\;\; \btrue </math>|| where <math>\mathit{Ty}</math> is a type expression || A | {{RRRow}}|*||{{Rulename|SIMP_TYPE_SUBSETEQ}}||<math> S \subseteq \mathit{Ty} \;\;\defi\;\; \btrue </math>|| where <math>\mathit{Ty}</math> is a type expression || A | ||
{{RRRow}}|||{{Rulename|SIMP_SUBSETEQ_SING}}||<math> \{ E\} \subseteq S \;\;\defi\;\; E \in S </math>|| where <math>E</math> is a single expression || A | {{RRRow}}|*||{{Rulename|SIMP_SUBSETEQ_SING}}||<math> \{ E\} \subseteq S \;\;\defi\;\; E \in S </math>|| where <math>E</math> is a single expression || A | ||
{{RRRow}}|*||{{Rulename|SIMP_SPECIAL_SUBSETEQ}}||<math> \emptyset \subseteq S \;\;\defi\;\; \btrue </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_SUBSETEQ}}||<math> \emptyset \subseteq S \;\;\defi\;\; \btrue </math>|| || A | ||
{{RRRow}}|*||{{Rulename|SIMP_MULTI_SUBSETEQ}}||<math> S \subseteq S \;\;\defi\;\; \btrue </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_MULTI_SUBSETEQ}}||<math> S \subseteq S \;\;\defi\;\; \btrue </math>|| || A | ||
Line 75: | Line 75: | ||
{{RRRow}}|*||{{Rulename|SIMP_TYPE_SETMINUS}}||<math> S \setminus \mathit{Ty} \;\;\defi\;\; \emptyset </math>|| where <math>\mathit{Ty}</math> is a type expression || A | {{RRRow}}|*||{{Rulename|SIMP_TYPE_SETMINUS}}||<math> S \setminus \mathit{Ty} \;\;\defi\;\; \emptyset </math>|| where <math>\mathit{Ty}</math> is a type expression || A | ||
{{RRRow}}|*||{{Rulename|SIMP_TYPE_SETMINUS_SETMINUS}}||<math> \mathit{Ty} \setminus (\mathit{Ty} \setminus S) \;\;\defi\;\; S </math>|| where <math>\mathit{Ty}</math> is a type expression || A | {{RRRow}}|*||{{Rulename|SIMP_TYPE_SETMINUS_SETMINUS}}||<math> \mathit{Ty} \setminus (\mathit{Ty} \setminus S) \;\;\defi\;\; S </math>|| where <math>\mathit{Ty}</math> is a type expression || A | ||
{{RRRow}}|||{{Rulename|SIMP_KUNION_POW}}||<math> \union (\pow (S)) \;\;\defi\;\; S </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_KUNION_POW}}||<math> \union (\pow (S)) \;\;\defi\;\; S </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_KUNION_POW1}}||<math> \union (\pown (S)) \;\;\defi\;\; S </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_KUNION_POW1}}||<math> \union (\pown (S)) \;\;\defi\;\; S </math>|| || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_KUNION}}||<math> \union (\{ \emptyset \} ) \;\;\defi\;\; \emptyset </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_KUNION}}||<math> \union (\{ \emptyset \} ) \;\;\defi\;\; \emptyset </math>|| || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_QUNION}}||<math> \Union x\qdot \bfalse \mid E \;\;\defi\;\; \emptyset </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_QUNION}}||<math> \Union x\qdot \bfalse \mid E \;\;\defi\;\; \emptyset </math>|| || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_KINTER}}||<math> \inter (\{ \emptyset \} ) \;\;\defi\;\; \emptyset </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_KINTER}}||<math> \inter (\{ \emptyset \} ) \;\;\defi\;\; \emptyset </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_KINTER_POW}}||<math> \inter (\pow (S)) \;\;\defi\;\; \emptyset </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_KINTER_POW}}||<math> \inter (\pow (S)) \;\;\defi\;\; \emptyset </math>|| || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_POW}}||<math> \pow (\emptyset ) \;\;\defi\;\; \{ \emptyset \} </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_POW}}||<math> \pow (\emptyset ) \;\;\defi\;\; \{ \emptyset \} </math>|| || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_POW1}}||<math> \pown (\emptyset ) \;\;\defi\;\; \emptyset </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_POW1}}||<math> \pown (\emptyset ) \;\;\defi\;\; \emptyset </math>|| || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_CPROD_R}}||<math> S \cprod \emptyset \;\;\defi\;\; \emptyset </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_CPROD_R}}||<math> S \cprod \emptyset \;\;\defi\;\; \emptyset </math>|| || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_CPROD_L}}||<math> \emptyset \cprod S \;\;\defi\;\; \emptyset </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_CPROD_L}}||<math> \emptyset \cprod S \;\;\defi\;\; \emptyset </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_COMPSET_EQUAL}}||<math> \{ x \qdot x = E \mid x \} \;\;\defi\;\; \{ E\} </math>|| where <math>x</math> non free in <math>E</math> || A | {{RRRow}}|||{{Rulename|SIMP_COMPSET_EQUAL}}||<math> \{ x \qdot x = E \mid x \} \;\;\defi\;\; \{ E\} </math>|| where <math>x</math> non free in <math>E</math> || A | ||
{{RRRow}}|||{{Rulename|SIMP_COMPSET_IN}}||<math> \{ x \qdot x \in S \mid x \} \;\;\defi\;\; S </math>|| where <math>x</math> non free in <math>S</math> || A | {{RRRow}}|||{{Rulename|SIMP_COMPSET_IN}}||<math> \{ x \qdot x \in S \mid x \} \;\;\defi\;\; S </math>|| where <math>x</math> non free in <math>S</math> || A | ||
{{RRRow}}|||{{Rulename|SIMP_COMPSET_SUBSETEQ}}||<math> \{ x \qdot x \subseteq S \mid x \} \;\;\defi\;\; \pow (S) </math>|| where <math>x</math> non free in <math>S</math> || A | {{RRRow}}|||{{Rulename|SIMP_COMPSET_SUBSETEQ}}||<math> \{ x \qdot x \subseteq S \mid x \} \;\;\defi\;\; \pow (S) </math>|| where <math>x</math> non free in <math>S</math> || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_COMPSET_BFALSE}}||<math> \{ x \qdot \bfalse \mid x \} \;\;\defi\;\; \emptyset </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_COMPSET_BFALSE}}||<math> \{ x \qdot \bfalse \mid x \} \;\;\defi\;\; \emptyset </math>|| || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_COMPSET_BTRUE}}||<math> \{ x \qdot \btrue \mid x \} \;\;\defi\;\; \mathit{Ty} </math>|| where the type of <math>x</math> is <math>\mathit{Ty}</math> || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_COMPSET_BTRUE}}||<math> \{ x \qdot \btrue \mid x \} \;\;\defi\;\; \mathit{Ty} </math>|| where the type of <math>x</math> is <math>\mathit{Ty}</math> || A | ||
{{RRRow}}|||{{Rulename|SIMP_SUBSETEQ_COMPSET_L}}||<math> \{ x \qdot P(x) \mid E(x) \} \subseteq S \;\;\defi\;\; \forall y\qdot P(y) \limp E(y) \in S </math>|| where <math>y</math> is fresh || A | {{RRRow}}|||{{Rulename|SIMP_SUBSETEQ_COMPSET_L}}||<math> \{ x \qdot P(x) \mid E(x) \} \subseteq S \;\;\defi\;\; \forall y\qdot P(y) \limp E(y) \in S </math>|| where <math>y</math> is fresh || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_EQUAL_COMPSET}}||<math> \{ x \qdot P(x) \mid E \} = \emptyset \;\;\defi\;\; \forall x\qdot \lnot\, P(x) </math>|| || A | {{RRRow}}| ||{{Rulename|SIMP_SPECIAL_EQUAL_COMPSET}}||<math> \{ x \qdot P(x) \mid E \} = \emptyset \;\;\defi\;\; \forall x\qdot \lnot\, P(x) </math>|| || A | ||
Line 130: | Line 130: | ||
{{RRRow}}|||{{Rulename|SIMP_FINITE_QINTER}}||<math> \finite (\Inter x \qdot P \mid E) \;\;\defi\;\; \exists x \qdot P \land \finite (E) </math>|| || M | {{RRRow}}|||{{Rulename|SIMP_FINITE_QINTER}}||<math> \finite (\Inter x \qdot P \mid E) \;\;\defi\;\; \exists x \qdot P \land \finite (E) </math>|| || M | ||
--> | --> | ||
{{RRRow}}|||{{Rulename|SIMP_FINITE_ID}}||<math> \finite (\id) \;\;\defi\;\; \finite (S) </math>|| where <math>\id</math> has type <math>\pow(S \cprod S)</math> || A | {{RRRow}}|*||{{Rulename|SIMP_FINITE_ID}}||<math> \finite (\id) \;\;\defi\;\; \finite (S) </math>|| where <math>\id</math> has type <math>\pow(S \cprod S)</math> || A | ||
{{RRRow}}|||{{Rulename|SIMP_FINITE_ID_DOMRES}}||<math> \finite (E \domres \id) \;\;\defi\;\; \finite (E) </math>|| || A | {{RRRow}}|||{{Rulename|SIMP_FINITE_ID_DOMRES}}||<math> \finite (E \domres \id) \;\;\defi\;\; \finite (E) </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_FINITE_PRJ1}}||<math> \finite (\prjone) \;\;\defi\;\; \finite (S \cprod T) </math>|| where <math>\prjone</math> has type <math>\pow(S \cprod T \cprod S)</math> || A | {{RRRow}}|||{{Rulename|SIMP_FINITE_PRJ1}}||<math> \finite (\prjone) \;\;\defi\;\; \finite (S \cprod T) </math>|| where <math>\prjone</math> has type <math>\pow(S \cprod T \cprod S)</math> || A | ||
Line 136: | Line 136: | ||
{{RRRow}}|||{{Rulename|SIMP_FINITE_PRJ1_DOMRES}}||<math> \finite (E \domres \prjone) \;\;\defi\;\; \finite (E) </math>|| || A | {{RRRow}}|||{{Rulename|SIMP_FINITE_PRJ1_DOMRES}}||<math> \finite (E \domres \prjone) \;\;\defi\;\; \finite (E) </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_FINITE_PRJ2_DOMRES}}||<math> \finite (E \domres \prjtwo) \;\;\defi\;\; \finite (E) </math>|| || A | {{RRRow}}|||{{Rulename|SIMP_FINITE_PRJ2_DOMRES}}||<math> \finite (E \domres \prjtwo) \;\;\defi\;\; \finite (E) </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_FINITE_NATURAL}}||<math> \finite (\nat ) \;\;\defi\;\; \bfalse </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_FINITE_NATURAL}}||<math> \finite (\nat ) \;\;\defi\;\; \bfalse </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_FINITE_NATURAL1}}||<math> \finite (\natn ) \;\;\defi\;\; \bfalse </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_FINITE_NATURAL1}}||<math> \finite (\natn ) \;\;\defi\;\; \bfalse </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_FINITE_INTEGER}}||<math> \finite (\intg ) \;\;\defi\;\; \bfalse </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_FINITE_INTEGER}}||<math> \finite (\intg ) \;\;\defi\;\; \bfalse </math>|| || A | ||
{{RRRow}}|||{{Rulename|SIMP_FINITE_LAMBDA}}||<math> \finite(\{x\qdot P\mid E\mapsto F\}) \;\;\defi\;\; \finite(\{x\qdot P\mid E\} ) </math>|| where <math>E</math> is a maplet combination of bound identifiers and expressions that are not bound by the comprehension set (i.e., <math>E</math> is syntactically injective) and all identifiers bound by the comprehension set that occur in <math>F</math> also occur in <math>E</math> || A | {{RRRow}}|*||{{Rulename|SIMP_FINITE_LAMBDA}}||<math> \finite(\{x\qdot P\mid E\mapsto F\}) \;\;\defi\;\; \finite(\{x\qdot P\mid E\} ) </math>|| where <math>E</math> is a maplet combination of bound identifiers and expressions that are not bound by the comprehension set (i.e., <math>E</math> is syntactically injective) and all identifiers bound by the comprehension set that occur in <math>F</math> also occur in <math>E</math> || A | ||
{{RRRow}}|*||{{Rulename|SIMP_TYPE_EQUAL_EMPTY}}||<math> \mathit{Ty} = \emptyset \;\;\defi\;\; \bfalse </math>|| where <math>\mathit{Ty}</math> is a type expression || A | {{RRRow}}|*||{{Rulename|SIMP_TYPE_EQUAL_EMPTY}}||<math> \mathit{Ty} = \emptyset \;\;\defi\;\; \bfalse </math>|| where <math>\mathit{Ty}</math> is a type expression || A | ||
{{RRRow}}|*||{{Rulename|SIMP_TYPE_IN}}||<math> t \in \mathit{Ty} \;\;\defi\;\; \btrue </math>|| where <math>\mathit{Ty}</math> is a type expression || A | {{RRRow}}|*||{{Rulename|SIMP_TYPE_IN}}||<math> t \in \mathit{Ty} \;\;\defi\;\; \btrue </math>|| where <math>\mathit{Ty}</math> is a type expression || A | ||
Line 149: | Line 149: | ||
{{RRRow}}|*||{{Rulename|SIMP_SPECIAL_EQV_BFALSE}}||<math> P \leqv \bfalse \;\;\defi\;\; \lnot\, P </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_EQV_BFALSE}}||<math> P \leqv \bfalse \;\;\defi\;\; \lnot\, P </math>|| || A | ||
{{RRRow}}|*||{{Rulename|DEF_SUBSET}}||<math> A \subset B \;\;\defi\;\; A \subseteq B \land \lnot A = B </math>|| || A | {{RRRow}}|*||{{Rulename|DEF_SUBSET}}||<math> A \subset B \;\;\defi\;\; A \subseteq B \land \lnot A = B </math>|| || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_SUBSET_R}}||<math> S \subset \emptyset \;\;\defi\;\; \bfalse </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_SUBSET_R}}||<math> S \subset \emptyset \;\;\defi\;\; \bfalse </math>|| || A | ||
{{RRRow}}| ||{{Rulename|SIMP_SPECIAL_SUBSET_L}}||<math>\emptyset\subset S \;\;\defi\;\; \lnot\; S = \emptyset</math>|| || A | {{RRRow}}| ||{{Rulename|SIMP_SPECIAL_SUBSET_L}}||<math>\emptyset\subset S \;\;\defi\;\; \lnot\; S = \emptyset</math>|| || A | ||
{{RRRow}}|*||{{Rulename|SIMP_TYPE_SUBSET_L}}||<math> S \subset \mathit{Ty} \;\;\defi\;\; S \neq \mathit{Ty} </math>|| where <math>\mathit{Ty}</math> is a type expression || A | {{RRRow}}|*||{{Rulename|SIMP_TYPE_SUBSET_L}}||<math> S \subset \mathit{Ty} \;\;\defi\;\; S \neq \mathit{Ty} </math>|| where <math>\mathit{Ty}</math> is a type expression || A | ||
{{RRRow}}|||{{Rulename|SIMP_MULTI_SUBSET}}||<math> S \subset S \;\;\defi\;\; \bfalse </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_MULTI_SUBSET}}||<math> S \subset S \;\;\defi\;\; \bfalse </math>|| || A | ||
{{RRRow}}|*||{{Rulename|SIMP_EQUAL_CONSTR}}||<math> \operatorname{constr} (a_1, \ldots, a_n) = \operatorname{constr} (b_1, \ldots, b_n) \;\;\defi\;\; a_1 = b_1 \land \ldots \land a_n = b_n </math>|| where <math>\operatorname{constr}</math> is a datatype constructor || A | {{RRRow}}|*||{{Rulename|SIMP_EQUAL_CONSTR}}||<math> \operatorname{constr} (a_1, \ldots, a_n) = \operatorname{constr} (b_1, \ldots, b_n) \;\;\defi\;\; a_1 = b_1 \land \ldots \land a_n = b_n </math>|| where <math>\operatorname{constr}</math> is a datatype constructor || A | ||
{{RRRow}}|*||{{Rulename|SIMP_EQUAL_CONSTR_DIFF}}||<math> \operatorname{constr_1} (\ldots) = \operatorname{constr_2} (\ldots) \;\;\defi\;\; \bfalse </math>|| where <math>\operatorname{constr_1}</math> and <math>\operatorname{constr_2}</math> are different datatype constructors || A | {{RRRow}}|*||{{Rulename|SIMP_EQUAL_CONSTR_DIFF}}||<math> \operatorname{constr_1} (\ldots) = \operatorname{constr_2} (\ldots) \;\;\defi\;\; \bfalse </math>|| where <math>\operatorname{constr_1}</math> and <math>\operatorname{constr_2}</math> are different datatype constructors || A |
Revision as of 16:49, 17 January 2011
Rules that are marked with a * in the first column are implemented in the latest version of Rodin. Rules without a * are planned to be implemented in future versions. Other conventions used in these tables are described in The_Proving_Perspective_(Rodin_User_Manual)#Rewrite_Rules.
Name | Rule | Side Condition | A/M | |
---|---|---|---|---|
* | SIMP_SPECIAL_AND_BTRUE |
![]() |
A | |
* | SIMP_SPECIAL_AND_BFALSE |
![]() |
A | |
* | SIMP_MULTI_AND |
![]() |
A | |
* | SIMP_MULTI_AND_NOT |
![]() |
A | |
* | SIMP_SPECIAL_OR_BTRUE |
![]() |
A | |
* | SIMP_SPECIAL_OR_BFALSE |
![]() |
A | |
* | SIMP_MULTI_OR |
![]() |
A | |
* | SIMP_MULTI_OR_NOT |
![]() |
A | |
* | SIMP_SPECIAL_IMP_BTRUE_R |
![]() |
A | |
* | SIMP_SPECIAL_IMP_BTRUE_L |
![]() |
A | |
* | SIMP_SPECIAL_IMP_BFALSE_R |
![]() |
A | |
* | SIMP_SPECIAL_IMP_BFALSE_L |
![]() |
A | |
* | SIMP_MULTI_IMP |
![]() |
A | |
* | SIMP_MULTI_IMP_OR |
![]() |
A | |
* | SIMP_MULTI_IMP_AND_NOT_R |
![]() |
A | |
* | SIMP_MULTI_IMP_AND_NOT_L |
![]() |
A | |
* | SIMP_MULTI_EQV |
![]() |
A | |
* | SIMP_MULTI_EQV_NOT |
![]() |
A | |
* | SIMP_SPECIAL_NOT_BTRUE |
![]() |
A | |
* | SIMP_SPECIAL_NOT_BFALSE |
![]() |
A | |
* | SIMP_NOT_NOT |
![]() |
A | |
* | SIMP_NOTEQUAL |
![]() |
A | |
* | SIMP_NOTIN |
![]() |
A | |
* | SIMP_NOTSUBSET |
![]() |
A | |
* | SIMP_NOTSUBSETEQ |
![]() |
A | |
* | SIMP_NOT_LE |
![]() |
A | |
* | SIMP_NOT_GE |
![]() |
A | |
* | SIMP_NOT_LT |
![]() |
A | |
* | SIMP_NOT_GT |
![]() |
A | |
* | SIMP_SPECIAL_NOT_EQUAL_FALSE_R |
![]() |
A | |
* | SIMP_SPECIAL_NOT_EQUAL_FALSE_L |
![]() |
A | |
* | SIMP_SPECIAL_NOT_EQUAL_TRUE_R |
![]() |
A | |
* | SIMP_SPECIAL_NOT_EQUAL_TRUE_L |
![]() |
A | |
* | SIMP_FORALL_AND |
![]() |
A | |
* | SIMP_EXISTS_OR |
![]() |
A | |
* | SIMP_FORALL |
![]() |
Quantified identifiers other than ![]() ![]() |
A |
* | SIMP_EXISTS |
![]() |
Quantified identifiers other than ![]() ![]() |
A |
* | SIMP_MULTI_EQUAL |
![]() |
A | |
* | SIMP_MULTI_NOTEQUAL |
![]() |
A | |
* | SIMP_EQUAL_MAPSTO |
![]() |
A | |
* | SIMP_EQUAL_SING |
![]() |
A | |
* | SIMP_SPECIAL_EQUAL_TRUE |
![]() |
A | |
* | SIMP_TYPE_SUBSETEQ |
![]() |
where ![]() |
A |
* | SIMP_SUBSETEQ_SING |
![]() |
where ![]() |
A |
* | SIMP_SPECIAL_SUBSETEQ |
![]() |
A | |
* | SIMP_MULTI_SUBSETEQ |
![]() |
A | |
* | SIMP_SUBSETEQ_BUNION |
![]() |
A | |
* | SIMP_SUBSETEQ_BINTER |
![]() |
A | |
* | DERIV_SUBSETEQ_BUNION |
![]() |
M | |
* | DERIV_SUBSETEQ_BINTER |
![]() |
M | |
* | SIMP_SPECIAL_IN |
![]() |
A | |
* | SIMP_MULTI_IN |
![]() |
A | |
* | SIMP_IN_SING |
![]() |
A | |
* | SIMP_MULTI_SETENUM |
![]() |
A | |
* | SIMP_SPECIAL_BINTER |
![]() |
A | |
* | SIMP_TYPE_BINTER |
![]() |
where ![]() |
A |
* | SIMP_MULTI_BINTER |
![]() |
A | |
SIMP_MULTI_EQUAL_BINTER |
![]() |
A | ||
* | SIMP_SPECIAL_BUNION |
![]() |
A | |
* | SIMP_TYPE_BUNION |
![]() |
where ![]() |
A |
* | SIMP_MULTI_BUNION |
![]() |
A | |
SIMP_MULTI_EQUAL_BUNION |
![]() |
A | ||
* | SIMP_MULTI_SETMINUS |
![]() |
A | |
* | SIMP_SPECIAL_SETMINUS_R |
![]() |
A | |
* | SIMP_SPECIAL_SETMINUS_L |
![]() |
A | |
* | SIMP_TYPE_SETMINUS |
![]() |
where ![]() |
A |
* | SIMP_TYPE_SETMINUS_SETMINUS |
![]() |
where ![]() |
A |
* | SIMP_KUNION_POW |
![]() |
A | |
* | SIMP_KUNION_POW1 |
![]() |
A | |
* | SIMP_SPECIAL_KUNION |
![]() |
A | |
* | SIMP_SPECIAL_QUNION |
![]() |
A | |
* | SIMP_SPECIAL_KINTER |
![]() |
A | |
* | SIMP_KINTER_POW |
![]() |
A | |
* | SIMP_SPECIAL_POW |
![]() |
A | |
* | SIMP_SPECIAL_POW1 |
![]() |
A | |
* | SIMP_SPECIAL_CPROD_R |
![]() |
A | |
* | SIMP_SPECIAL_CPROD_L |
![]() |
A | |
SIMP_COMPSET_EQUAL |
![]() |
where ![]() ![]() |
A | |
SIMP_COMPSET_IN |
![]() |
where ![]() ![]() |
A | |
SIMP_COMPSET_SUBSETEQ |
![]() |
where ![]() ![]() |
A | |
* | SIMP_SPECIAL_COMPSET_BFALSE |
![]() |
A | |
* | SIMP_SPECIAL_COMPSET_BTRUE |
![]() |
where the type of ![]() ![]() |
A |
SIMP_SUBSETEQ_COMPSET_L |
![]() |
where ![]() |
A | |
SIMP_SPECIAL_EQUAL_COMPSET |
![]() |
A | ||
* | SIMP_IN_COMPSET |
![]() |
where ![]() ![]() ![]() ![]() |
A |
* | SIMP_IN_COMPSET_ONEPOINT |
![]() |
Equivalent to general simplification followed by One Point Rule application with the last conjunct predicate | A |
SIMP_SUBSETEQ_COMPSET_R |
![]() |
where ![]() ![]() |
A | |
SIMP_SPECIAL_OVERL |
![]() |
A | ||
* | SIMP_SPECIAL_KBOOL_BTRUE |
![]() |
A | |
* | SIMP_SPECIAL_KBOOL_BFALSE |
![]() |
A | |
DISTRI_SUBSETEQ_BUNION_SING |
![]() |
where ![]() |
M | |
DEF_FINITE |
![]() |
M | ||
* | SIMP_SPECIAL_FINITE |
![]() |
A | |
* | SIMP_FINITE_SETENUM |
![]() |
A | |
* | SIMP_FINITE_BUNION |
![]() |
A | |
SIMP_FINITE_UNION |
![]() |
M | ||
SIMP_FINITE_QUNION |
![]() |
M | ||
* | SIMP_FINITE_POW |
![]() |
A | |
* | DERIV_FINITE_CPROD |
![]() |
A | |
* | SIMP_FINITE_CONVERSE |
![]() |
A | |
* | SIMP_FINITE_UPTO |
![]() |
A | |
* | SIMP_FINITE_ID |
![]() |
where ![]() ![]() |
A |
SIMP_FINITE_ID_DOMRES |
![]() |
A | ||
SIMP_FINITE_PRJ1 |
![]() |
where ![]() ![]() |
A | |
SIMP_FINITE_PRJ2 |
![]() |
where ![]() ![]() |
A | |
SIMP_FINITE_PRJ1_DOMRES |
![]() |
A | ||
SIMP_FINITE_PRJ2_DOMRES |
![]() |
A | ||
* | SIMP_FINITE_NATURAL |
![]() |
A | |
* | SIMP_FINITE_NATURAL1 |
![]() |
A | |
* | SIMP_FINITE_INTEGER |
![]() |
A | |
* | SIMP_FINITE_LAMBDA |
![]() |
where ![]() ![]() ![]() ![]() |
A |
* | SIMP_TYPE_EQUAL_EMPTY |
![]() |
where ![]() |
A |
* | SIMP_TYPE_IN |
![]() |
where ![]() |
A |
SIMP_SPECIAL_FORALL_BTRUE |
![]() |
A | ||
SIMP_SPECIAL_FORALL_BFALSE |
![]() |
A | ||
SIMP_SPECIAL_EXISTS_BTRUE |
![]() |
A | ||
SIMP_SPECIAL_EXISTS_BFALSE |
![]() |
A | ||
* | SIMP_SPECIAL_EQV_BTRUE |
![]() |
A | |
* | SIMP_SPECIAL_EQV_BFALSE |
![]() |
A | |
* | DEF_SUBSET |
![]() |
A | |
* | SIMP_SPECIAL_SUBSET_R |
![]() |
A | |
SIMP_SPECIAL_SUBSET_L |
![]() |
A | ||
* | SIMP_TYPE_SUBSET_L |
![]() |
where ![]() |
A |
* | SIMP_MULTI_SUBSET |
![]() |
A | |
* | SIMP_EQUAL_CONSTR |
![]() |
where ![]() |
A |
* | SIMP_EQUAL_CONSTR_DIFF |
![]() |
where ![]() ![]() |
A |
* | SIMP_DESTR_CONSTR |
![]() |
where ![]() ![]() |
A |
* | DISTRI_AND_OR |
![]() |
M | |
* | DISTRI_OR_AND |
![]() |
M | |
* | DEF_OR |
![]() |
M | |
* | DERIV_IMP |
![]() |
M | |
* | DERIV_IMP_IMP |
![]() |
M | |
* | DISTRI_IMP_AND |
![]() |
M | |
* | DISTRI_IMP_OR |
![]() |
M | |
* | DEF_EQV |
![]() |
M | |
* | DISTRI_NOT_AND |
![]() |
M | |
* | DISTRI_NOT_OR |
![]() |
M | |
* | DERIV_NOT_IMP |
![]() |
M | |
* | DERIV_NOT_FORALL |
![]() |
M | |
* | DERIV_NOT_EXISTS |
![]() |
M | |
* | DEF_SPECIAL_NOT_EQUAL |
![]() |
where ![]() ![]() |
M |
* | DEF_IN_MAPSTO |
![]() |
M | |
* | DEF_IN_POW |
![]() |
M | |
* | DEF_IN_POW1 |
![]() |
M | |
* | DEF_SUBSETEQ |
![]() |
where ![]() ![]() ![]() |
M |
* | DEF_IN_BUNION |
![]() |
M | |
* | DEF_IN_BINTER |
![]() |
M | |
* | DEF_IN_SETMINUS |
![]() |
M | |
* | DEF_IN_SETENUM |
![]() |
M | |
* | DEF_IN_KUNION |
![]() |
where ![]() |
M |
* | DEF_IN_QUNION |
![]() |
where ![]() |
M |
* | DEF_IN_KINTER |
![]() |
where ![]() |
M |
* | DEF_IN_QINTER |
![]() |
where ![]() |
M |
* | DEF_IN_UPTO |
![]() |
M | |
* | DISTRI_BUNION_BINTER |
![]() |
M | |
* | DISTRI_BINTER_BUNION |
![]() |
M | |
DISTRI_BINTER_SETMINUS |
![]() |
M | ||
DISTRI_SETMINUS_BUNION |
![]() |
M | ||
* | DERIV_TYPE_SETMINUS_BINTER |
![]() |
where ![]() |
M |
* | DERIV_TYPE_SETMINUS_BUNION |
![]() |
where ![]() |
M |
* | DERIV_TYPE_SETMINUS_SETMINUS |
![]() |
where ![]() |
M |
DISTRI_CPROD_BINTER |
![]() |
M | ||
DISTRI_CPROD_BUNION |
![]() |
M | ||
DISTRI_CPROD_SETMINUS |
![]() |
M | ||
* | DERIV_SUBSETEQ |
![]() |
where ![]() ![]() ![]() |
M |
* | DERIV_EQUAL |
![]() |
where ![]() ![]() ![]() |
M |
* | DERIV_SUBSETEQ_SETMINUS_L |
![]() |
M | |
* | DERIV_SUBSETEQ_SETMINUS_R |
![]() |
M | |
* | DEF_PARTITION |
![]() |
AM |