Documentation

Mathlib.Tactic.FunProp.Core

Tactic fun_prop for proving function properties like Continuous f, Differentiable ℝ f, ... #

Synthesize instance of type type and

  1. assign it to x if x is meta variable
  2. check it is equal to x
Equations
  • One or more equations did not get rendered due to their size.

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.

Try to apply theorem - core function

Equations
  • One or more equations did not get rendered due to their size.

Try to apply a theorem provided some of the theorem arguments.

Equations
  • One or more equations did not get rendered due to their size.

Try to apply a theorem thmOrigin to the goal e.

Equations

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.

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.

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.

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.

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.

Try to prove e = q(P (fun x => let y := φ x; ψ x y).

For example,

  • funPropDecl is FunPropDecl for Continuous
  • e = q(Continuous fun x => let y := φ x; ψ x y)
  • f = q(fun x => let y := φ x; ψ x y)
Equations

Prove function property of using morphism theorems.

Equations
  • One or more equations did not get rendered due to their size.

Prove function property of using transition theorems.

Equations
  • One or more equations did not get rendered due to their size.

Try to remove applied argument i.e. prove P (fun x => f x y) from P (fun x => f x).

For example

  • funPropDecl is FunPropDecl for Continuous
  • e = q(Continuous fun x => foo (bar x) y)
  • fData contains info on fun x => foo (bar x) y This tries to prove Continuous fun x => foo (bar x) y from Continuous fun x => foo (bar x)
Equations
  • One or more equations did not get rendered due to their size.

Prove function property of fun f => f x₁ ... xₙ.

Equations
  • One or more equations did not get rendered due to their size.

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.

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.

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.

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.

Cache result if it does not have any subgoals.

Equations
  • One or more equations did not get rendered due to their size.