Extension Proof Rules: Difference between revisions
From Event-B
Jump to navigationJump to search
imported>Nicolas m copied datatype inference rules |
imported>Nicolas No edit summary |
||
| Line 8: | Line 8: | ||
{{RRRow}}|*||{{Rulename|SIMP_SPECIAL_COND_BTRUE}}||<math> \operatorname{COND}(\btrue, E_1, E_2) \;\;\defi\;\; E_1 </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_COND_BTRUE}}||<math> \operatorname{COND}(\btrue, E_1, E_2) \;\;\defi\;\; E_1 </math>|| || A | ||
{{RRRow}}|*||{{Rulename|SIMP_SPECIAL_COND_BFALSE}}||<math> \operatorname{COND}(\bfalse, E_1, E_2) \;\;\defi\;\; E_2 </math>|| || A | {{RRRow}}|*||{{Rulename|SIMP_SPECIAL_COND_BFALSE}}||<math> \operatorname{COND}(\bfalse, E_1, E_2) \;\;\defi\;\; E_2 </math>|| || A | ||
{{RRRow}}| ||{{Rulename|SIMP_MULTI_COND}}||<math> \operatorname{COND}(C, E, E) \;\;\defi\;\; E </math>|| || A | |||
|} | |} | ||
Revision as of 12:52, 10 September 2010
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.
Rewrite Rules
| Name | Rule | Side Condition | A/M | |
|---|---|---|---|---|
| * | SIMP_SPECIAL_COND_BTRUE |
![]() |
A | |
| * | SIMP_SPECIAL_COND_BFALSE |
![]() |
A | |
SIMP_MULTI_COND |
![]() |
A |
Inference Rules
| Name | Rule | Side Condition | A/M | |
|---|---|---|---|---|
DATATYPE_DISTINCT_CASE |
![]() |
where has a datatype as type and appears free in , has constructors , parameters are introduced as fresh identifiers |
M
| |
DATATYPE_INDUCTION |
![]() |
where has inductive datatype as type and appears free in ; are the inductive parameters (if any); an antecedent is created for every constructor of ; all parameters are introduced as fresh identifiers; examples here |
M |




has a datatype
as type and appears free in
,
, parameters
are introduced as fresh identifiers
;
are the inductive parameters (if any); an antecedent is created for every constructor
of