{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://www.calculatorx.com/schemas/math.linear_algebra/1.14.16/input.json",
  "title": "Linear system / small matrix — input",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "mode": {
      "type": "string",
      "description": "Canonical operations below; documented engine aliases (determinant, inv, eig, cholesky, etc.) are also accepted.",
      "enum": [
        "solve",
        "system",
        "axb",
        "linear-system",
        "det",
        "determinant",
        "inverse",
        "inv",
        "multiply",
        "mul",
        "product",
        "transpose",
        "t",
        "rank",
        "matrix-rank",
        "eigen",
        "eig",
        "eigenvalue",
        "eigenvalues",
        "eigenvector",
        "eigenvectors",
        "lu",
        "plu",
        "factor-lu",
        "chol",
        "cholesky",
        "factor-chol",
        "factor-cholesky",
        "llt",
        "llT",
        "qr",
        "householder",
        "factor-qr",
        "svd",
        "singular",
        "singular_value",
        "singular_values",
        "lstsq",
        "least_squares",
        "least-squares",
        "leastsquare",
        "ols",
        "rref",
        "reduced-row-echelon",
        "reduced_row_echelon",
        "row-reduced",
        "gauss-jordan",
        "condition",
        "cond",
        "kappa",
        "condition_number",
        "condition-number",
        "matrix-condition",
        "nullspace",
        "null-space",
        "kernel",
        "ker",
        "null",
        "matrix-nullspace",
        "nullity",
        "columnspace",
        "column-space",
        "colspace",
        "image",
        "im",
        "range",
        "matrix-column-space",
        "col-space",
        "rowspace",
        "row-space",
        "matrix-row-space",
        "row_space",
        "leftnullspace",
        "left-nullspace",
        "left-null-space",
        "left_nullspace",
        "cokernel",
        "left-kernel",
        "matrix-left-nullspace"
      ]
    },
    "order": {
      "oneOf": [
        {
          "type": "integer",
          "minimum": 2,
          "maximum": 4
        },
        {
          "type": "string",
          "pattern": "^[2-4](?:[x×][2-4])?$"
        }
      ]
    },
    "rows": {
      "type": "integer",
      "minimum": 2,
      "maximum": 4
    },
    "cols": {
      "type": "integer",
      "minimum": 2,
      "maximum": 4
    },
    "a11": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a12": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a13": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a21": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a22": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a23": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a31": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a32": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a33": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b1": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b2": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b3": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "A": {
      "type": "array",
      "minItems": 2,
      "maxItems": 4,
      "items": {
        "type": "array",
        "minItems": 2,
        "maxItems": 4,
        "items": {
          "oneOf": [
            {
              "type": "number"
            },
            {
              "type": "string",
              "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
            }
          ],
          "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
        }
      }
    },
    "B": {
      "type": "array",
      "minItems": 2,
      "maxItems": 4,
      "items": {
        "type": "array",
        "minItems": 2,
        "maxItems": 4,
        "items": {
          "oneOf": [
            {
              "type": "number"
            },
            {
              "type": "string",
              "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
            }
          ],
          "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
        }
      }
    },
    "b": {
      "type": "array",
      "minItems": 2,
      "maxItems": 4,
      "items": {
        "oneOf": [
          {
            "type": "number"
          },
          {
            "type": "string",
            "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
          }
        ],
        "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
      }
    },
    "rhs": {
      "type": "array",
      "minItems": 2,
      "maxItems": 4,
      "items": {
        "oneOf": [
          {
            "type": "number"
          },
          {
            "type": "string",
            "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
          }
        ],
        "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
      }
    },
    "n": {
      "type": "integer",
      "minimum": 2,
      "maximum": 4
    },
    "m": {
      "type": "integer",
      "minimum": 2,
      "maximum": 4
    },
    "b11": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b12": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b13": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a14": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b14": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b21": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b22": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b23": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a24": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b24": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b31": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b32": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b33": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a34": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b34": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b4": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a41": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b41": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a42": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b42": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a43": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b43": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "a44": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    },
    "b44": {
      "oneOf": [
        {
          "type": "number"
        },
        {
          "type": "string",
          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
        }
      ],
      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
    }
  },
  "anyOf": [
    {
      "required": [
        "A"
      ]
    },
    {
      "required": [
        "a11"
      ]
    }
  ],
  "allOf": [
    {
      "if": {
        "anyOf": [
          {
            "required": [
              "rows",
              "cols"
            ],
            "properties": {
              "rows": {
                "const": 2
              },
              "cols": {
                "const": 2
              }
            }
          },
          {
            "required": [
              "m",
              "cols"
            ],
            "properties": {
              "m": {
                "const": 2
              },
              "cols": {
                "const": 2
              }
            }
          },
          {
            "required": [
              "order"
            ],
            "properties": {
              "order": {
                "enum": [
                  2,
                  "2",
                  "2x2",
                  "2×2"
                ]
              }
            }
          },
          {
            "required": [
              "n"
            ],
            "properties": {
              "n": {
                "const": 2
              }
            }
          },
          {
            "not": {
              "anyOf": [
                {
                  "required": [
                    "order"
                  ]
                },
                {
                  "required": [
                    "n"
                  ]
                },
                {
                  "required": [
                    "rows"
                  ]
                },
                {
                  "required": [
                    "m"
                  ]
                },
                {
                  "required": [
                    "cols"
                  ]
                }
              ]
            }
          }
        ]
      },
      "then": {
        "properties": {
          "A": {
            "type": "array",
            "minItems": 2,
            "maxItems": 2,
            "items": {
              "type": "array",
              "minItems": 2,
              "maxItems": 2,
              "items": {
                "oneOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "string",
                    "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                  }
                ],
                "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
              }
            }
          }
        },
        "allOf": [
          {
            "anyOf": [
              {
                "required": [
                  "A"
                ]
              },
              {
                "required": [
                  "a11",
                  "a12",
                  "a21",
                  "a22"
                ]
              }
            ]
          },
          {
            "if": {
              "anyOf": [
                {
                  "not": {
                    "required": [
                      "mode"
                    ]
                  }
                },
                {
                  "required": [
                    "mode"
                  ],
                  "properties": {
                    "mode": {
                      "enum": [
                        "solve",
                        "system",
                        "axb",
                        "linear-system",
                        "lstsq",
                        "least_squares",
                        "least-squares",
                        "leastsquare",
                        "ols"
                      ]
                    }
                  }
                }
              ]
            },
            "then": {
              "properties": {
                "b": {
                  "type": "array",
                  "minItems": 2,
                  "maxItems": 2,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                },
                "rhs": {
                  "type": "array",
                  "minItems": 2,
                  "maxItems": 2,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "b"
                  ]
                },
                {
                  "required": [
                    "rhs"
                  ]
                },
                {
                  "required": [
                    "b1",
                    "b2"
                  ]
                }
              ]
            }
          },
          {
            "if": {
              "required": [
                "mode"
              ],
              "properties": {
                "mode": {
                  "enum": [
                    "multiply",
                    "mul",
                    "product"
                  ]
                }
              }
            },
            "then": {
              "properties": {
                "B": {
                  "type": "array",
                  "minItems": 2,
                  "maxItems": 2,
                  "items": {
                    "type": "array",
                    "minItems": 2,
                    "maxItems": 2,
                    "items": {
                      "oneOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                        }
                      ],
                      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                    }
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "B"
                  ]
                },
                {
                  "required": [
                    "b11",
                    "b12",
                    "b21",
                    "b22"
                  ]
                }
              ]
            }
          }
        ]
      }
    },
    {
      "if": {
        "anyOf": [
          {
            "required": [
              "rows",
              "cols"
            ],
            "properties": {
              "rows": {
                "const": 2
              },
              "cols": {
                "const": 3
              }
            }
          },
          {
            "required": [
              "m",
              "cols"
            ],
            "properties": {
              "m": {
                "const": 2
              },
              "cols": {
                "const": 3
              }
            }
          },
          {
            "required": [
              "order"
            ],
            "properties": {
              "order": {
                "enum": [
                  "2x3",
                  "2×3"
                ]
              }
            }
          }
        ]
      },
      "then": {
        "properties": {
          "A": {
            "type": "array",
            "minItems": 2,
            "maxItems": 2,
            "items": {
              "type": "array",
              "minItems": 3,
              "maxItems": 3,
              "items": {
                "oneOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "string",
                    "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                  }
                ],
                "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
              }
            }
          }
        },
        "allOf": [
          {
            "anyOf": [
              {
                "required": [
                  "A"
                ]
              },
              {
                "required": [
                  "a11",
                  "a12",
                  "a13",
                  "a21",
                  "a22",
                  "a23"
                ]
              }
            ]
          },
          {
            "required": [
              "mode"
            ],
            "properties": {
              "mode": {
                "enum": [
                  "qr",
                  "householder",
                  "factor-qr",
                  "svd",
                  "singular",
                  "singular_value",
                  "singular_values",
                  "lstsq",
                  "least_squares",
                  "least-squares",
                  "leastsquare",
                  "ols"
                ]
              }
            }
          },
          {
            "if": {
              "anyOf": [
                {
                  "not": {
                    "required": [
                      "mode"
                    ]
                  }
                },
                {
                  "required": [
                    "mode"
                  ],
                  "properties": {
                    "mode": {
                      "enum": [
                        "solve",
                        "system",
                        "axb",
                        "linear-system",
                        "lstsq",
                        "least_squares",
                        "least-squares",
                        "leastsquare",
                        "ols"
                      ]
                    }
                  }
                }
              ]
            },
            "then": {
              "properties": {
                "b": {
                  "type": "array",
                  "minItems": 2,
                  "maxItems": 2,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                },
                "rhs": {
                  "type": "array",
                  "minItems": 2,
                  "maxItems": 2,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "b"
                  ]
                },
                {
                  "required": [
                    "rhs"
                  ]
                },
                {
                  "required": [
                    "b1",
                    "b2"
                  ]
                }
              ]
            }
          },
          {
            "if": {
              "required": [
                "mode"
              ],
              "properties": {
                "mode": {
                  "enum": [
                    "multiply",
                    "mul",
                    "product"
                  ]
                }
              }
            },
            "then": {
              "properties": {
                "B": {
                  "type": "array",
                  "minItems": 2,
                  "maxItems": 2,
                  "items": {
                    "type": "array",
                    "minItems": 3,
                    "maxItems": 3,
                    "items": {
                      "oneOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                        }
                      ],
                      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                    }
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "B"
                  ]
                },
                {
                  "required": [
                    "b11",
                    "b12",
                    "b13",
                    "b21",
                    "b22",
                    "b23"
                  ]
                }
              ]
            }
          }
        ]
      }
    },
    {
      "if": {
        "anyOf": [
          {
            "required": [
              "rows",
              "cols"
            ],
            "properties": {
              "rows": {
                "const": 2
              },
              "cols": {
                "const": 4
              }
            }
          },
          {
            "required": [
              "m",
              "cols"
            ],
            "properties": {
              "m": {
                "const": 2
              },
              "cols": {
                "const": 4
              }
            }
          },
          {
            "required": [
              "order"
            ],
            "properties": {
              "order": {
                "enum": [
                  "2x4",
                  "2×4"
                ]
              }
            }
          }
        ]
      },
      "then": {
        "properties": {
          "A": {
            "type": "array",
            "minItems": 2,
            "maxItems": 2,
            "items": {
              "type": "array",
              "minItems": 4,
              "maxItems": 4,
              "items": {
                "oneOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "string",
                    "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                  }
                ],
                "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
              }
            }
          }
        },
        "allOf": [
          {
            "anyOf": [
              {
                "required": [
                  "A"
                ]
              },
              {
                "required": [
                  "a11",
                  "a12",
                  "a13",
                  "a14",
                  "a21",
                  "a22",
                  "a23",
                  "a24"
                ]
              }
            ]
          },
          {
            "required": [
              "mode"
            ],
            "properties": {
              "mode": {
                "enum": [
                  "qr",
                  "householder",
                  "factor-qr",
                  "svd",
                  "singular",
                  "singular_value",
                  "singular_values",
                  "lstsq",
                  "least_squares",
                  "least-squares",
                  "leastsquare",
                  "ols"
                ]
              }
            }
          },
          {
            "if": {
              "anyOf": [
                {
                  "not": {
                    "required": [
                      "mode"
                    ]
                  }
                },
                {
                  "required": [
                    "mode"
                  ],
                  "properties": {
                    "mode": {
                      "enum": [
                        "solve",
                        "system",
                        "axb",
                        "linear-system",
                        "lstsq",
                        "least_squares",
                        "least-squares",
                        "leastsquare",
                        "ols"
                      ]
                    }
                  }
                }
              ]
            },
            "then": {
              "properties": {
                "b": {
                  "type": "array",
                  "minItems": 2,
                  "maxItems": 2,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                },
                "rhs": {
                  "type": "array",
                  "minItems": 2,
                  "maxItems": 2,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "b"
                  ]
                },
                {
                  "required": [
                    "rhs"
                  ]
                },
                {
                  "required": [
                    "b1",
                    "b2"
                  ]
                }
              ]
            }
          },
          {
            "if": {
              "required": [
                "mode"
              ],
              "properties": {
                "mode": {
                  "enum": [
                    "multiply",
                    "mul",
                    "product"
                  ]
                }
              }
            },
            "then": {
              "properties": {
                "B": {
                  "type": "array",
                  "minItems": 2,
                  "maxItems": 2,
                  "items": {
                    "type": "array",
                    "minItems": 4,
                    "maxItems": 4,
                    "items": {
                      "oneOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                        }
                      ],
                      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                    }
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "B"
                  ]
                },
                {
                  "required": [
                    "b11",
                    "b12",
                    "b13",
                    "b14",
                    "b21",
                    "b22",
                    "b23",
                    "b24"
                  ]
                }
              ]
            }
          }
        ]
      }
    },
    {
      "if": {
        "anyOf": [
          {
            "required": [
              "rows",
              "cols"
            ],
            "properties": {
              "rows": {
                "const": 3
              },
              "cols": {
                "const": 2
              }
            }
          },
          {
            "required": [
              "m",
              "cols"
            ],
            "properties": {
              "m": {
                "const": 3
              },
              "cols": {
                "const": 2
              }
            }
          },
          {
            "required": [
              "order"
            ],
            "properties": {
              "order": {
                "enum": [
                  "3x2",
                  "3×2"
                ]
              }
            }
          }
        ]
      },
      "then": {
        "properties": {
          "A": {
            "type": "array",
            "minItems": 3,
            "maxItems": 3,
            "items": {
              "type": "array",
              "minItems": 2,
              "maxItems": 2,
              "items": {
                "oneOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "string",
                    "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                  }
                ],
                "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
              }
            }
          }
        },
        "allOf": [
          {
            "anyOf": [
              {
                "required": [
                  "A"
                ]
              },
              {
                "required": [
                  "a11",
                  "a12",
                  "a21",
                  "a22",
                  "a31",
                  "a32"
                ]
              }
            ]
          },
          {
            "required": [
              "mode"
            ],
            "properties": {
              "mode": {
                "enum": [
                  "qr",
                  "householder",
                  "factor-qr",
                  "svd",
                  "singular",
                  "singular_value",
                  "singular_values",
                  "lstsq",
                  "least_squares",
                  "least-squares",
                  "leastsquare",
                  "ols"
                ]
              }
            }
          },
          {
            "if": {
              "anyOf": [
                {
                  "not": {
                    "required": [
                      "mode"
                    ]
                  }
                },
                {
                  "required": [
                    "mode"
                  ],
                  "properties": {
                    "mode": {
                      "enum": [
                        "solve",
                        "system",
                        "axb",
                        "linear-system",
                        "lstsq",
                        "least_squares",
                        "least-squares",
                        "leastsquare",
                        "ols"
                      ]
                    }
                  }
                }
              ]
            },
            "then": {
              "properties": {
                "b": {
                  "type": "array",
                  "minItems": 3,
                  "maxItems": 3,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                },
                "rhs": {
                  "type": "array",
                  "minItems": 3,
                  "maxItems": 3,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "b"
                  ]
                },
                {
                  "required": [
                    "rhs"
                  ]
                },
                {
                  "required": [
                    "b1",
                    "b2",
                    "b3"
                  ]
                }
              ]
            }
          },
          {
            "if": {
              "required": [
                "mode"
              ],
              "properties": {
                "mode": {
                  "enum": [
                    "multiply",
                    "mul",
                    "product"
                  ]
                }
              }
            },
            "then": {
              "properties": {
                "B": {
                  "type": "array",
                  "minItems": 3,
                  "maxItems": 3,
                  "items": {
                    "type": "array",
                    "minItems": 2,
                    "maxItems": 2,
                    "items": {
                      "oneOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                        }
                      ],
                      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                    }
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "B"
                  ]
                },
                {
                  "required": [
                    "b11",
                    "b12",
                    "b21",
                    "b22",
                    "b31",
                    "b32"
                  ]
                }
              ]
            }
          }
        ]
      }
    },
    {
      "if": {
        "anyOf": [
          {
            "required": [
              "rows",
              "cols"
            ],
            "properties": {
              "rows": {
                "const": 3
              },
              "cols": {
                "const": 3
              }
            }
          },
          {
            "required": [
              "m",
              "cols"
            ],
            "properties": {
              "m": {
                "const": 3
              },
              "cols": {
                "const": 3
              }
            }
          },
          {
            "required": [
              "order"
            ],
            "properties": {
              "order": {
                "enum": [
                  3,
                  "3",
                  "3x3",
                  "3×3"
                ]
              }
            }
          },
          {
            "required": [
              "n"
            ],
            "properties": {
              "n": {
                "const": 3
              }
            }
          }
        ]
      },
      "then": {
        "properties": {
          "A": {
            "type": "array",
            "minItems": 3,
            "maxItems": 3,
            "items": {
              "type": "array",
              "minItems": 3,
              "maxItems": 3,
              "items": {
                "oneOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "string",
                    "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                  }
                ],
                "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
              }
            }
          }
        },
        "allOf": [
          {
            "anyOf": [
              {
                "required": [
                  "A"
                ]
              },
              {
                "required": [
                  "a11",
                  "a12",
                  "a13",
                  "a21",
                  "a22",
                  "a23",
                  "a31",
                  "a32",
                  "a33"
                ]
              }
            ]
          },
          {
            "if": {
              "anyOf": [
                {
                  "not": {
                    "required": [
                      "mode"
                    ]
                  }
                },
                {
                  "required": [
                    "mode"
                  ],
                  "properties": {
                    "mode": {
                      "enum": [
                        "solve",
                        "system",
                        "axb",
                        "linear-system",
                        "lstsq",
                        "least_squares",
                        "least-squares",
                        "leastsquare",
                        "ols"
                      ]
                    }
                  }
                }
              ]
            },
            "then": {
              "properties": {
                "b": {
                  "type": "array",
                  "minItems": 3,
                  "maxItems": 3,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                },
                "rhs": {
                  "type": "array",
                  "minItems": 3,
                  "maxItems": 3,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "b"
                  ]
                },
                {
                  "required": [
                    "rhs"
                  ]
                },
                {
                  "required": [
                    "b1",
                    "b2",
                    "b3"
                  ]
                }
              ]
            }
          },
          {
            "if": {
              "required": [
                "mode"
              ],
              "properties": {
                "mode": {
                  "enum": [
                    "multiply",
                    "mul",
                    "product"
                  ]
                }
              }
            },
            "then": {
              "properties": {
                "B": {
                  "type": "array",
                  "minItems": 3,
                  "maxItems": 3,
                  "items": {
                    "type": "array",
                    "minItems": 3,
                    "maxItems": 3,
                    "items": {
                      "oneOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                        }
                      ],
                      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                    }
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "B"
                  ]
                },
                {
                  "required": [
                    "b11",
                    "b12",
                    "b13",
                    "b21",
                    "b22",
                    "b23",
                    "b31",
                    "b32",
                    "b33"
                  ]
                }
              ]
            }
          }
        ]
      }
    },
    {
      "if": {
        "anyOf": [
          {
            "required": [
              "rows",
              "cols"
            ],
            "properties": {
              "rows": {
                "const": 3
              },
              "cols": {
                "const": 4
              }
            }
          },
          {
            "required": [
              "m",
              "cols"
            ],
            "properties": {
              "m": {
                "const": 3
              },
              "cols": {
                "const": 4
              }
            }
          },
          {
            "required": [
              "order"
            ],
            "properties": {
              "order": {
                "enum": [
                  "3x4",
                  "3×4"
                ]
              }
            }
          }
        ]
      },
      "then": {
        "properties": {
          "A": {
            "type": "array",
            "minItems": 3,
            "maxItems": 3,
            "items": {
              "type": "array",
              "minItems": 4,
              "maxItems": 4,
              "items": {
                "oneOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "string",
                    "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                  }
                ],
                "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
              }
            }
          }
        },
        "allOf": [
          {
            "anyOf": [
              {
                "required": [
                  "A"
                ]
              },
              {
                "required": [
                  "a11",
                  "a12",
                  "a13",
                  "a14",
                  "a21",
                  "a22",
                  "a23",
                  "a24",
                  "a31",
                  "a32",
                  "a33",
                  "a34"
                ]
              }
            ]
          },
          {
            "required": [
              "mode"
            ],
            "properties": {
              "mode": {
                "enum": [
                  "qr",
                  "householder",
                  "factor-qr",
                  "svd",
                  "singular",
                  "singular_value",
                  "singular_values",
                  "lstsq",
                  "least_squares",
                  "least-squares",
                  "leastsquare",
                  "ols"
                ]
              }
            }
          },
          {
            "if": {
              "anyOf": [
                {
                  "not": {
                    "required": [
                      "mode"
                    ]
                  }
                },
                {
                  "required": [
                    "mode"
                  ],
                  "properties": {
                    "mode": {
                      "enum": [
                        "solve",
                        "system",
                        "axb",
                        "linear-system",
                        "lstsq",
                        "least_squares",
                        "least-squares",
                        "leastsquare",
                        "ols"
                      ]
                    }
                  }
                }
              ]
            },
            "then": {
              "properties": {
                "b": {
                  "type": "array",
                  "minItems": 3,
                  "maxItems": 3,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                },
                "rhs": {
                  "type": "array",
                  "minItems": 3,
                  "maxItems": 3,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "b"
                  ]
                },
                {
                  "required": [
                    "rhs"
                  ]
                },
                {
                  "required": [
                    "b1",
                    "b2",
                    "b3"
                  ]
                }
              ]
            }
          },
          {
            "if": {
              "required": [
                "mode"
              ],
              "properties": {
                "mode": {
                  "enum": [
                    "multiply",
                    "mul",
                    "product"
                  ]
                }
              }
            },
            "then": {
              "properties": {
                "B": {
                  "type": "array",
                  "minItems": 3,
                  "maxItems": 3,
                  "items": {
                    "type": "array",
                    "minItems": 4,
                    "maxItems": 4,
                    "items": {
                      "oneOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                        }
                      ],
                      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                    }
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "B"
                  ]
                },
                {
                  "required": [
                    "b11",
                    "b12",
                    "b13",
                    "b14",
                    "b21",
                    "b22",
                    "b23",
                    "b24",
                    "b31",
                    "b32",
                    "b33",
                    "b34"
                  ]
                }
              ]
            }
          }
        ]
      }
    },
    {
      "if": {
        "anyOf": [
          {
            "required": [
              "rows",
              "cols"
            ],
            "properties": {
              "rows": {
                "const": 4
              },
              "cols": {
                "const": 2
              }
            }
          },
          {
            "required": [
              "m",
              "cols"
            ],
            "properties": {
              "m": {
                "const": 4
              },
              "cols": {
                "const": 2
              }
            }
          },
          {
            "required": [
              "order"
            ],
            "properties": {
              "order": {
                "enum": [
                  "4x2",
                  "4×2"
                ]
              }
            }
          }
        ]
      },
      "then": {
        "properties": {
          "A": {
            "type": "array",
            "minItems": 4,
            "maxItems": 4,
            "items": {
              "type": "array",
              "minItems": 2,
              "maxItems": 2,
              "items": {
                "oneOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "string",
                    "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                  }
                ],
                "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
              }
            }
          }
        },
        "allOf": [
          {
            "anyOf": [
              {
                "required": [
                  "A"
                ]
              },
              {
                "required": [
                  "a11",
                  "a12",
                  "a21",
                  "a22",
                  "a31",
                  "a32",
                  "a41",
                  "a42"
                ]
              }
            ]
          },
          {
            "required": [
              "mode"
            ],
            "properties": {
              "mode": {
                "enum": [
                  "qr",
                  "householder",
                  "factor-qr",
                  "svd",
                  "singular",
                  "singular_value",
                  "singular_values",
                  "lstsq",
                  "least_squares",
                  "least-squares",
                  "leastsquare",
                  "ols"
                ]
              }
            }
          },
          {
            "if": {
              "anyOf": [
                {
                  "not": {
                    "required": [
                      "mode"
                    ]
                  }
                },
                {
                  "required": [
                    "mode"
                  ],
                  "properties": {
                    "mode": {
                      "enum": [
                        "solve",
                        "system",
                        "axb",
                        "linear-system",
                        "lstsq",
                        "least_squares",
                        "least-squares",
                        "leastsquare",
                        "ols"
                      ]
                    }
                  }
                }
              ]
            },
            "then": {
              "properties": {
                "b": {
                  "type": "array",
                  "minItems": 4,
                  "maxItems": 4,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                },
                "rhs": {
                  "type": "array",
                  "minItems": 4,
                  "maxItems": 4,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "b"
                  ]
                },
                {
                  "required": [
                    "rhs"
                  ]
                },
                {
                  "required": [
                    "b1",
                    "b2",
                    "b3",
                    "b4"
                  ]
                }
              ]
            }
          },
          {
            "if": {
              "required": [
                "mode"
              ],
              "properties": {
                "mode": {
                  "enum": [
                    "multiply",
                    "mul",
                    "product"
                  ]
                }
              }
            },
            "then": {
              "properties": {
                "B": {
                  "type": "array",
                  "minItems": 4,
                  "maxItems": 4,
                  "items": {
                    "type": "array",
                    "minItems": 2,
                    "maxItems": 2,
                    "items": {
                      "oneOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                        }
                      ],
                      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                    }
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "B"
                  ]
                },
                {
                  "required": [
                    "b11",
                    "b12",
                    "b21",
                    "b22",
                    "b31",
                    "b32",
                    "b41",
                    "b42"
                  ]
                }
              ]
            }
          }
        ]
      }
    },
    {
      "if": {
        "anyOf": [
          {
            "required": [
              "rows",
              "cols"
            ],
            "properties": {
              "rows": {
                "const": 4
              },
              "cols": {
                "const": 3
              }
            }
          },
          {
            "required": [
              "m",
              "cols"
            ],
            "properties": {
              "m": {
                "const": 4
              },
              "cols": {
                "const": 3
              }
            }
          },
          {
            "required": [
              "order"
            ],
            "properties": {
              "order": {
                "enum": [
                  "4x3",
                  "4×3"
                ]
              }
            }
          }
        ]
      },
      "then": {
        "properties": {
          "A": {
            "type": "array",
            "minItems": 4,
            "maxItems": 4,
            "items": {
              "type": "array",
              "minItems": 3,
              "maxItems": 3,
              "items": {
                "oneOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "string",
                    "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                  }
                ],
                "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
              }
            }
          }
        },
        "allOf": [
          {
            "anyOf": [
              {
                "required": [
                  "A"
                ]
              },
              {
                "required": [
                  "a11",
                  "a12",
                  "a13",
                  "a21",
                  "a22",
                  "a23",
                  "a31",
                  "a32",
                  "a33",
                  "a41",
                  "a42",
                  "a43"
                ]
              }
            ]
          },
          {
            "required": [
              "mode"
            ],
            "properties": {
              "mode": {
                "enum": [
                  "qr",
                  "householder",
                  "factor-qr",
                  "svd",
                  "singular",
                  "singular_value",
                  "singular_values",
                  "lstsq",
                  "least_squares",
                  "least-squares",
                  "leastsquare",
                  "ols"
                ]
              }
            }
          },
          {
            "if": {
              "anyOf": [
                {
                  "not": {
                    "required": [
                      "mode"
                    ]
                  }
                },
                {
                  "required": [
                    "mode"
                  ],
                  "properties": {
                    "mode": {
                      "enum": [
                        "solve",
                        "system",
                        "axb",
                        "linear-system",
                        "lstsq",
                        "least_squares",
                        "least-squares",
                        "leastsquare",
                        "ols"
                      ]
                    }
                  }
                }
              ]
            },
            "then": {
              "properties": {
                "b": {
                  "type": "array",
                  "minItems": 4,
                  "maxItems": 4,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                },
                "rhs": {
                  "type": "array",
                  "minItems": 4,
                  "maxItems": 4,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "b"
                  ]
                },
                {
                  "required": [
                    "rhs"
                  ]
                },
                {
                  "required": [
                    "b1",
                    "b2",
                    "b3",
                    "b4"
                  ]
                }
              ]
            }
          },
          {
            "if": {
              "required": [
                "mode"
              ],
              "properties": {
                "mode": {
                  "enum": [
                    "multiply",
                    "mul",
                    "product"
                  ]
                }
              }
            },
            "then": {
              "properties": {
                "B": {
                  "type": "array",
                  "minItems": 4,
                  "maxItems": 4,
                  "items": {
                    "type": "array",
                    "minItems": 3,
                    "maxItems": 3,
                    "items": {
                      "oneOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                        }
                      ],
                      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                    }
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "B"
                  ]
                },
                {
                  "required": [
                    "b11",
                    "b12",
                    "b13",
                    "b21",
                    "b22",
                    "b23",
                    "b31",
                    "b32",
                    "b33",
                    "b41",
                    "b42",
                    "b43"
                  ]
                }
              ]
            }
          }
        ]
      }
    },
    {
      "if": {
        "anyOf": [
          {
            "required": [
              "rows",
              "cols"
            ],
            "properties": {
              "rows": {
                "const": 4
              },
              "cols": {
                "const": 4
              }
            }
          },
          {
            "required": [
              "m",
              "cols"
            ],
            "properties": {
              "m": {
                "const": 4
              },
              "cols": {
                "const": 4
              }
            }
          },
          {
            "required": [
              "order"
            ],
            "properties": {
              "order": {
                "enum": [
                  4,
                  "4",
                  "4x4",
                  "4×4"
                ]
              }
            }
          },
          {
            "required": [
              "n"
            ],
            "properties": {
              "n": {
                "const": 4
              }
            }
          }
        ]
      },
      "then": {
        "properties": {
          "A": {
            "type": "array",
            "minItems": 4,
            "maxItems": 4,
            "items": {
              "type": "array",
              "minItems": 4,
              "maxItems": 4,
              "items": {
                "oneOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "string",
                    "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                  }
                ],
                "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
              }
            }
          }
        },
        "allOf": [
          {
            "anyOf": [
              {
                "required": [
                  "A"
                ]
              },
              {
                "required": [
                  "a11",
                  "a12",
                  "a13",
                  "a14",
                  "a21",
                  "a22",
                  "a23",
                  "a24",
                  "a31",
                  "a32",
                  "a33",
                  "a34",
                  "a41",
                  "a42",
                  "a43",
                  "a44"
                ]
              }
            ]
          },
          {
            "if": {
              "anyOf": [
                {
                  "not": {
                    "required": [
                      "mode"
                    ]
                  }
                },
                {
                  "required": [
                    "mode"
                  ],
                  "properties": {
                    "mode": {
                      "enum": [
                        "solve",
                        "system",
                        "axb",
                        "linear-system",
                        "lstsq",
                        "least_squares",
                        "least-squares",
                        "leastsquare",
                        "ols"
                      ]
                    }
                  }
                }
              ]
            },
            "then": {
              "properties": {
                "b": {
                  "type": "array",
                  "minItems": 4,
                  "maxItems": 4,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                },
                "rhs": {
                  "type": "array",
                  "minItems": 4,
                  "maxItems": 4,
                  "items": {
                    "oneOf": [
                      {
                        "type": "number"
                      },
                      {
                        "type": "string",
                        "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                      }
                    ],
                    "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "b"
                  ]
                },
                {
                  "required": [
                    "rhs"
                  ]
                },
                {
                  "required": [
                    "b1",
                    "b2",
                    "b3",
                    "b4"
                  ]
                }
              ]
            }
          },
          {
            "if": {
              "required": [
                "mode"
              ],
              "properties": {
                "mode": {
                  "enum": [
                    "multiply",
                    "mul",
                    "product"
                  ]
                }
              }
            },
            "then": {
              "properties": {
                "B": {
                  "type": "array",
                  "minItems": 4,
                  "maxItems": 4,
                  "items": {
                    "type": "array",
                    "minItems": 4,
                    "maxItems": 4,
                    "items": {
                      "oneOf": [
                        {
                          "type": "number"
                        },
                        {
                          "type": "string",
                          "pattern": "^[+\\-−–—]?(?:[0-9]+(?:\\.[0-9]*)?|\\.[0-9]+)(?:[eE][+\\-]?[0-9]+)?$"
                        }
                      ],
                      "description": "Finite binary64 decimal. Nonzero text underflow is rejected; strings do not extend precision."
                    }
                  }
                }
              },
              "anyOf": [
                {
                  "required": [
                    "B"
                  ]
                },
                {
                  "required": [
                    "b11",
                    "b12",
                    "b13",
                    "b14",
                    "b21",
                    "b22",
                    "b23",
                    "b24",
                    "b31",
                    "b32",
                    "b33",
                    "b34",
                    "b41",
                    "b42",
                    "b43",
                    "b44"
                  ]
                }
              ]
            }
          }
        ]
      }
    }
  ],
  "description": "Real small matrices, decimal binary64 inputs, complete cells required; aliases and nested/flat representations must agree. Defaults are solve and square order 2. Dimensions and value agreement are additionally validated at runtime. QR/SVD/least squares accept rectangles; other modes are square. (calculation_version 1.14.16)"
}
