Open brando90 opened 5 years ago
note:
Notation "e '\\' n"
:= (aevalR e n)
(at level 50, left associativity)
: type_scope.
ok mine has an error too need to fix it later...
(* crl < A1 / A2,Sigma > => < I1 /Int I2 > if < A1,Sigma > => < I1 > /\ < A2,Sigma > => < I2 > /\ I2 =/=Bool 0 . *)
| BigStep_Divide: forall (A1 A2 I1 I2 : AExp ) (Sigma : State ),
(BigStepR (B_AExpConf A1 Sigma) (B_AExpConf I1 Sigma) ) ->
(BigStepR (B_AExpConf A2 Sigma) (B_AExpConf I2 Sigma) ) ->
(* TODO (not (I2 = 0) ) -> *)
(BigStepR (B_AExpConf (APlus A1 A2) Sigma) (B_AExpConf (ADiv I1 I2) Sigma)).
we might need division by zero:
I notice that perhaps we need to use something like that for our code and perhaps small step was missing it?