logo

Demonstrations for the theory of proveit.core_expr_types.lambda_maps

In [1]:
import proveit
from proveit import Lambda, Conditional
from proveit import x, fx, gx, Qx
from proveit.logic import Equals, Forall
%begin demonstrations

Lambda substitution

In [2]:
universal_eq = Forall(x, Equals(fx, gx))
universal_eq:
In [3]:
Lambda(x, fx).substitution(universal_eq, assumptions=[universal_eq])
In [4]:
universal_eq_with_cond = Forall(x, Equals(fx, gx), condition=Qx)
universal_eq_with_cond:
In [5]:
Lambda(x, Conditional(fx, Qx)).substitution(universal_eq_with_cond, 
                                            assumptions=[universal_eq_with_cond])
In [6]:
%end demonstrations