Tactic fun_prop
for proving function properties like Continuous f
, Differentiable ℝ f
, ... #
Synthesize instance of type type
and
- assign it to
x
ifx
is meta variable - check it is equal to
x
Equations
- One or more equations did not get rendered due to their size.
Instances For
Synthesize arguments xs
either with typeclass synthesis, with fun_prop
or with
discharger.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try to apply theorem - core function
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try to apply a theorem provided some of the theorem arguments.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try to apply a theorem thmOrigin
to the goal e
.
Equations
- Mathlib.Meta.FunProp.tryTheorem? e thmOrigin funProp newMCtxDepth = Mathlib.Meta.FunProp.tryTheoremWithHint? e thmOrigin #[] funProp newMCtxDepth
Instances For
Try to prove e
using using identity lambda theorem.
For example, e = q(Continuous fun x => x)
and funPropDecl
is FunPropDecl
for Continuous
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try to prove e
using using constant lambda theorem.
For example, e = q(Continuous fun x => y)
and funPropDecl
is FunPropDecl
for Continuous
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try to prove e
using using apply lambda theorem.
For example, e = q(Continuous fun f => f x)
and funPropDecl
is FunPropDecl
for Continuous
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try to prove e
using composition lambda theorem.
For example, e = q(Continuous fun x => f (g x))
and funPropDecl
is FunPropDecl
for
Continuous
You also have to provide the functions f
and g
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try to prove e
using pi lambda theorem.
For example, e = q(Continuous fun x y => f x y)
and funPropDecl
is FunPropDecl
for
Continuous
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try to prove e = q(P (fun x => let y := φ x; ψ x y)
.
For example,
funPropDecl
isFunPropDecl
forContinuous
e = q(Continuous fun x => let y := φ x; ψ x y)
f = q(fun x => let y := φ x; ψ x y)
Equations
- One or more equations did not get rendered due to their size.
- Mathlib.Meta.FunProp.letCase funPropDecl e f funProp = Lean.throwError (Lean.toMessageData "expected expression of the form `fun x => lam y := ..; ..`")
Instances For
Prove function property of using morphism theorems.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Prove function property of using transition theorems.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try to remove applied argument i.e. prove P (fun x => f x y)
from P (fun x => f x)
.
For example
funPropDecl
isFunPropDecl
forContinuous
e = q(Continuous fun x => foo (bar x) y)
fData
contains info onfun x => foo (bar x) y
This tries to proveContinuous fun x => foo (bar x) y
fromContinuous fun x => foo (bar x)
Equations
- One or more equations did not get rendered due to their size.
Instances For
Prove function property of fun f => f x₁ ... xₙ
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Get candidate theorems from the environment for function property funPropDecl
and
function funName
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Get candidate theorems from the local context for function property funPropDecl
and
function funName
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Try to apply function theorems thms
to e
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Prove function property of fun x => f x₁ ... xₙ
where f
is free variable.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Prove function property of fun x => f x₁ ... xₙ
where f
is declared function.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Cache result if it does not have any subgoals.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Cache for failed goals such that fun_prop
can fail fast next time.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Main funProp
function. Returns proof of e
.