Section safety_equivalence.
Context
( X Y:Type)
( halted: X -> Y -> Prop)
( int_step: X -> Y -> Y -> Prop)
( ext_step: X -> Y -> X -> Y -> Prop)
( valid: X -> Y -> Prop).

Axiom valid_step:
forall x y y',
valid x y  -> int_step x y y' ->
valid x y'.