Zulip Chat Archive

Stream: mathlib4

Topic: cannot find synthesization order for instance


Yury G. Kudryashov (Jul 02 2023 at 03:44):

In #5662, Lean doesn't accept the definition of class ModularFormClass with the following error message:

cannot find synthesization order for instance @ModularFormClass.toSlashInvariantFormClass with type
  {F : Type u_1}  {Γ : Subgroup SL(2, )}  {k : }  [self : ModularFormClass F Γ k]  SlashInvariantFormClass F Γ k
all remaining arguments have metavariables:
  ModularFormClass F  ?k

Here is an #mwe:

import Mathlib.NumberTheory.ModularForms.SlashInvariantForms
import Mathlib.Analysis.Complex.UpperHalfPlane.Manifold

open Complex UpperHalfPlane

open scoped Topology Manifold UpperHalfPlane

local notation "SL(" n ", " R ")" => Matrix.SpecialLinearGroup (Fin n) R

class ModularFormClass (F : Type _) (Γ : Subgroup SL(2, )) (k : )
  extends SlashInvariantFormClass F Γ k where

Yury G. Kudryashov (Jul 02 2023 at 03:45):

Ah, adding outParams helps.

Denis Gorbachev (Aug 10 2023 at 04:35):

For those coming from search: you can find a minimal example with solution here: https://github.com/DenisGorbachev/lean-error-resolutions/blob/main/errors/cannot-find-synthesization-order.md


Last updated: Dec 20 2023 at 11:08 UTC