Section LambdaFreeness.
Context {X: Const}.
Inductive lambda_free : exp X -> Prop :=
| lambda_free_var x: lambda_free (var x)
| lambda_free_const c: lambda_free (const c)
| lambda_free_app s t: lambda_free s -> lambda_free t -> lambda_free (s t).

Lemma lambda_free_not_lam s:
lambda_free s -> ~ isLam s.