Documentation

Mathlib.Tactic.FunProp.Theorems

fun_prop environment extensions storing theorems for fun_prop #

Tag for one of the 5 basic lambda theorems, that also hold extra data for composition theorem

Tag for one of the 5 basic lambda theorems

Decides whether f is a function corresponding to one of the lambda theorems.

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

Structure holding information about lambda theorem.

Equations

Collection of lambda theorems

Environment extension storing all lambda theorems.

Get lambda theorems for particular function property funPropName.

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

Function theorems are stated in uncurried or compositional form.

uncurried

theorem Continuous_add : Continuous (fun x => x.1 + x.2)

compositional

theorem Continuous_add (hf : Continuous f) (hg : Continuous g) : Continuous (fun x => (f x) + (g x))

TheoremForm to string

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

theorem about specific function (either declared constant or free variable)

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

General theorem about function property used for transition and morphism theorems

Equations

There are four types of theorems:

  • lam - theorem about basic lambda calculus terms
  • function - theorem about a specific function(declared or free variable) in specific arguments
  • mor - special theorems talking about bundled morphisms/DFunLike.coe
  • transition - theorems inferring one function property from another

Examples:

  • lam
  theorem Continuous_id : Continuous fun x => x
  theorem Continuous_comp (hf : Continuous f) (hg : Continuous g) : Continuous fun x => f (g x)
  • function
  theorem Continuous_add : Continuous (fun x => x.1 + x.2)
  theorem Continuous_add (hf : Continuous f) (hg : Continuous g) :
      Continuous (fun x => (f x) + (g x))
  • mor - the head of function body has to be ``DFunLike.code
  theorem ContDiff.clm_apply {f : E → F →L[𝕜] G} {g : E → F}
      (hf : ContDiff 𝕜 n f) (hg : ContDiff 𝕜 n g) :
      ContDiff 𝕜 n fun x => (f x) (g x)
  theorem clm_linear {f : E →L[𝕜] F} : IsLinearMap 𝕜 f
  • transition - the conclusion has to be in the form P f where f is a free variable
  theorem linear_is_continuous [FiniteDimensional ℝ E] {f : E → F} (hf : IsLinearMap 𝕜 f) :
      Continuous f

For a theorem declaration declName return fun_prop theorem. It correctly detects which type of theorem it is.

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

Register theorem declName with fun_prop.

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