(motive : Lean.OpaqueVal → Lean.OpaqueVal → Sort u_1) →
  (x x_1 : Lean.OpaqueVal) →
    ((a : Lean.ConstantVal) →
        (a_1 : Lean.Expr) →
          (a_2 : Bool) →
            (a_3 : List Lean.Name) →
              (b : Lean.ConstantVal) →
                (b_1 : Lean.Expr) →
                  (b_2 : Bool) →
                    (b_3 : List Lean.Name) →
                      motive { toConstantVal := a, value := a_1, isUnsafe := a_2, all := a_3 }
                        { toConstantVal := b, value := b_1, isUnsafe := b_2, all := b_3 }) →
      ((x x_2 : Lean.OpaqueVal) → motive x x_2) → motive x x_1