(motive : (σs : List (Type u_1)) → Std.Do.SPred σs → Std.Do.SPred σs → Sort u_2) →
  (σs : List (Type u_1)) →
    (P Q : Std.Do.SPred σs) →
      ((P Q : Std.Do.SPred []) → motive [] P Q) →
        ((σ : Type u_1) → (tail : List (Type u_1)) → (P Q : Std.Do.SPred (σ :: tail)) → motive (σ :: tail) P Q) →
          motive σs P Q