{ι : Type u_1} →
  {R : Type u_2} →
    {M : Type u_3} →
      {N : Type u_4} →
        [inst : CommRing R] →
          [inst_1 : AddCommGroup M] →
            [inst_2 : Module R M] →
              [inst_3 : AddCommGroup N] →
                [inst_4 : Module R N] →
                  {P : RootPairing ι R M N} →
                    {motive : P.IsG2 → Sort u} →
                      (t : P.IsG2) →
                        ([toIsValuedIn : P.IsValuedIn ℤ] →
                            [toIsReduced : P.IsReduced] →
                              [toIsIrreducible : P.IsIrreducible] →
                                (exists_pairingIn_neg_three : ∃ i j, P.pairingIn ℤ i j = -3) → motive ⋯) →
                          motive t