Module Qcert.Translation.Lang.CAMPRuletoCAMP
Require
Import
String
.
Require
Import
List
.
Require
Import
Utils
.
Require
Import
DataRuntime
.
Require
Import
CAMPRuleRuntime
.
Require
Import
CAMPRuntime
.
Section
CAMPRuletoCAMP
.
Section
Top
.
Context
{
fr
:
foreign_runtime
}.
Note: Translation from CAMP Rules to CAMP is really macro-expansion
Definition
camp_rule_to_camp_top
(
q
:
camp_rule
) :
camp
:=
camp_rule_to_camp
q
.
Context
(
h
:
brand_relation_t
).
Theorem
camp_rule_to_camp_top_correct
:
forall
q
:
camp_rule
,
forall
global_env
:
bindings
,
camp_rule_eval_top
h
q
global_env
=
camp_eval_top
h
(
camp_rule_to_camp_top
q
)
global_env
.
Proof.
intros
.
unfold
camp_rule_eval_top
.
unfold
camp_eval_top
.
reflexivity
.
Qed.
End
Top
.
End
CAMPRuletoCAMP
.