Loogle!
Result
Found 12164 declarations mentioning Int. Of these, 20 have a name containing "induction".
- Int.negInduction ๐ Mathlib.Data.Int.Init
{C : โค โ Sort u_1} (nat : (n : โ) โ C โn) (neg : ((n : โ) โ C โn) โ (n : โ) โ C (-โn)) (n : โค) : C n - Int.le_induction ๐ Mathlib.Data.Int.Init
{P : โค โ Prop} {m : โค} (h0 : P m) (h1 : โ (n : โค), m โค n โ P n โ P (n + 1)) (n : โค) : m โค n โ P n - Int.le_induction_down ๐ Mathlib.Data.Int.Init
{P : โค โ Prop} {m : โค} (h0 : P m) (h1 : โ n โค m, P n โ P (n - 1)) (n : โค) : n โค m โ P n - Int.inductionOn'.neg ๐ Mathlib.Data.Int.Init
{C : โค โ Sort u_1} (b : โค) (H0 : C b) (Hp : (k : โค) โ k โค b โ C k โ C (k - 1)) (n : โ) : C (b + Int.negSucc n) - Int.inductionOn'.pos ๐ Mathlib.Data.Int.Init
{C : โค โ Sort u_1} (b : โค) (H0 : C b) (Hs : (k : โค) โ b โค k โ C k โ C (k + 1)) (n : โ) : C (b + โn) - Int.inductionOn' ๐ Mathlib.Data.Int.Init
{C : โค โ Sort u_1} (z b : โค) (H0 : C b) (Hs : (k : โค) โ b โค k โ C k โ C (k + 1)) (Hp : (k : โค) โ k โค b โ C k โ C (k - 1)) : C z - Int.inductionOn'_self ๐ Mathlib.Data.Int.Init
{C : โค โ Sort u_1} {b : โค} {H0 : C b} {Hs : (k : โค) โ b โค k โ C k โ C (k + 1)} {Hp : (k : โค) โ k โค b โ C k โ C (k - 1)} : b.inductionOn' b H0 Hs Hp = H0 - Int.induction_on ๐ Mathlib.Data.Int.Init
{p : โค โ Prop} (i : โค) (hz : p 0) (hp : โ (i : โ), p โi โ p (โi + 1)) (hn : โ (i : โ), p (-โi) โ p (-โi - 1)) : p i - Int.inductionOn'_sub_one ๐ Mathlib.Data.Int.Init
{C : โค โ Sort u_1} {z b : โค} {H0 : C b} {Hs : (k : โค) โ b โค k โ C k โ C (k + 1)} {Hp : (k : โค) โ k โค b โ C k โ C (k - 1)} (hz : z โค b) : (z - 1).inductionOn' b H0 Hs Hp = Hp z hz (z.inductionOn' b H0 Hs Hp) - Int.inductionOn'.eq_1 ๐ Mathlib.Data.Int.Init
{C : โค โ Sort u_1} (z b : โค) (H0 : C b) (Hs : (k : โค) โ b โค k โ C k โ C (k + 1)) (Hp : (k : โค) โ k โค b โ C k โ C (k - 1)) : z.inductionOn' b H0 Hs Hp = cast โฏ (match z - b with | Int.ofNat n => Int.inductionOn'.pos b H0 Hs n | Int.negSucc n => Int.inductionOn'.neg b H0 Hp n) - zpow_induction_left ๐ Mathlib.Algebra.Group.Basic
{G : Type u_3} [Group G] {g : G} {P : G โ Prop} (h_one : P 1) (h_mul : โ (a : G), P a โ P (g * a)) (h_inv : โ (a : G), P a โ P (gโปยน * a)) (n : โค) : P (g ^ n) - zpow_induction_right ๐ Mathlib.Algebra.Group.Basic
{G : Type u_3} [Group G] {g : G} {P : G โ Prop} (h_one : P 1) (h_mul : โ (a : G), P a โ P (a * g)) (h_inv : โ (a : G), P a โ P (a * gโปยน)) (n : โค) : P (g ^ n) - zsmul_induction_left ๐ Mathlib.Algebra.Group.Basic
{G : Type u_3} [AddGroup G] {g : G} {P : G โ Prop} (h_one : P 0) (h_mul : โ (a : G), P a โ P (g + a)) (h_inv : โ (a : G), P a โ P (-g + a)) (n : โค) : P (n โข g) - zsmul_induction_right ๐ Mathlib.Algebra.Group.Basic
{G : Type u_3} [AddGroup G] {g : G} {P : G โ Prop} (h_one : P 0) (h_mul : โ (a : G), P a โ P (a + g)) (h_inv : โ (a : G), P a โ P (a + -g)) (n : โค) : P (n โข g) - Int.inductionOn'_add_one ๐ Mathlib.Data.Int.Basic
{C : โค โ Sort u_1} {z b : โค} {H0 : C b} {Hs : (k : โค) โ b โค k โ C k โ C (k + 1)} {Hp : (k : โค) โ k โค b โ C k โ C (k - 1)} (hz : b โค z) : (z + 1).inductionOn' b H0 Hs Hp = Hs z hz (z.inductionOn' b H0 Hs Hp) - LaurentPolynomial.induction_on_mul_T ๐ Mathlib.Algebra.Polynomial.Laurent
{R : Type u_1} [Semiring R] {Q : LaurentPolynomial R โ Prop} (f : LaurentPolynomial R) (Qf : โ {f : Polynomial R} {n : โ}, Q (Polynomial.toLaurent f * LaurentPolynomial.T (-โn))) : Q f - LaurentPolynomial.induction_on' ๐ Mathlib.Algebra.Polynomial.Laurent
{R : Type u_1} [Semiring R] {motive : LaurentPolynomial R โ Prop} (p : LaurentPolynomial R) (add : โ (p q : LaurentPolynomial R), motive p โ motive q โ motive (p + q)) (C_mul_T : โ (n : โค) (a : R), motive (LaurentPolynomial.C a * LaurentPolynomial.T n)) : motive p - LaurentPolynomial.induction_on ๐ Mathlib.Algebra.Polynomial.Laurent
{R : Type u_1} [Semiring R] {M : LaurentPolynomial R โ Prop} (p : LaurentPolynomial R) (h_C : โ (a : R), M (LaurentPolynomial.C a)) (h_add : โ {p q : LaurentPolynomial R}, M p โ M q โ M (p + q)) (h_C_mul_T : โ (n : โ) (a : R), M (LaurentPolynomial.C a * LaurentPolynomial.T โn) โ M (LaurentPolynomial.C a * LaurentPolynomial.T (โn + 1))) (h_C_mul_T_Z : โ (n : โ) (a : R), M (LaurentPolynomial.C a * LaurentPolynomial.T (-โn)) โ M (LaurentPolynomial.C a * LaurentPolynomial.T (-โn - 1))) : M p - FixedDetMatrices.induction_on ๐ Mathlib.LinearAlgebra.Matrix.FixedDetMatrices
{m : โค} {C : FixedDetMatrix (Fin 2) โค m โ Prop} {A : FixedDetMatrix (Fin 2) โค m} (hm : m โ 0) (h0 : โ (A : FixedDetMatrix (Fin 2) โค m), โA 1 0 = 0 โ 0 < โA 0 0 โ 0 โค โA 0 1 โ |โA 0 1| < |โA 1 1| โ C A) (hS : โ (B : FixedDetMatrix (Fin 2) โค m), C B โ C (ModularGroup.S โข B)) (hT : โ (B : FixedDetMatrix (Fin 2) โค m), C B โ C (ModularGroup.T โข B)) : C A - Poly.induction ๐ Mathlib.NumberTheory.Dioph
{ฮฑ : Type u_1} {C : Poly ฮฑ โ Prop} (H1 : โ (i : ฮฑ), C (Poly.proj i)) (H2 : โ (n : โค), C (Poly.const n)) (H3 : โ (f g : Poly ฮฑ), C f โ C g โ C (f - g)) (H4 : โ (f g : Poly ฮฑ), C f โ C g โ C (f * g)) (f : Poly ฮฑ) : C f
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using (by default) Ctrl-K Ctrl-S. You can also try the
#loogle
command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
๐Real.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
๐"differ"
finds all lemmas that have"differ"
somewhere in their lemma name.By subexpression:
๐_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
๐Real.sqrt ?a * Real.sqrt ?a
If the pattern has parameters, they are matched in any order. Both of these will find
List.map
:
๐(?a -> ?b) -> List ?a -> List ?b
๐List ?a -> (?a -> ?b) -> List ?b
By main conclusion:
๐|- tsum _ = _ * tsum _
finds all lemmas where the conclusion (the subexpression to the right of allโ
andโ
) has the given shape.As before, if the pattern has parameters, they are matched against the hypotheses of the lemma in any order; for example,
๐|- _ < _ โ tsum _ < tsum _
will findtsum_lt_tsum
even though the hypothesisf i < g i
is not the last.
If you pass more than one such search filter, separated by commas
Loogle will return lemmas which match all of them. The
search
๐ Real.sin, "two", tsum, _ * _, _ ^ _, |- _ < _ โ _
would find all lemmas which mention the constants Real.sin
and tsum
, have "two"
as a substring of the
lemma name, include a product and a power somewhere in the type,
and have a hypothesis of the form _ < _
(if
there were any such lemmas). Metavariables (?a
) are
assigned independently in each filter.
The #lucky
button will directly send you to the
documentation of the first hit.
Source code
You can find the source code for this service at https://github.com/nomeata/loogle. The https://loogle.lean-lang.org/ service is provided by the Lean FRO.
This is Loogle revision 19971e9
serving mathlib revision e0654b0