Definition inductive_invariant (step : step_relation) (init : A) (P : A -> Prop) :=
    P init /\ inductive step P.Definition reachable step init a :=
    exists out, refl_trans_1n_trace step init a out.Definition true_in_reachable step init (P : A -> Prop) :=
    forall a,
      reachable step init a ->
      P a.

Theorem inductive_invariant_true_in_reachable : forall step init P, inductive_invariant step init P -> true_in_reachable step init P.