module Input; type Unit := unit : Unit; terminating loop : {A : Type} -> A; loop := loop; const : {A : Type} -> A -> A -> A; const x y := x; fail : Unit; fail := const unit loop; axiom Action : Type; compile Action { c ↦ "int"; }; axiom Int_0 : Action; compile Int_0 { c ↦ "0"; }; main : Action; main := Int_0; end;