Documentation

Mathlib.Tactic.Simproc.ExistsAndEq

simproc for ∃ a', ... ∧ a' = a ∧ ... #

This module implements the existsAndEq simproc that checks whether P a' has the form ... ∧ a' = a ∧ ... or ... ∧ a = a' ∧ ... for the goal ∃ a', P a'. If so, it rewrites the latter as P a.

For an expression p of the form fun (x : α) ↦ (body : Prop), checks whether body implies x = a for some a, and constructs a proof of (∃ x, p x) = p a using exists_of_imp_eq.

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

    Traverses the expression h, branching at each And, to find a proof of x = a for some a.

    Checks whether P a' has the form ... ∧ a' = a ∧ ... or ... ∧ a = a' ∧ ... in the goal ∃ a', P a'. If so, rewrites the goal as P a.

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