Semantic Graph — Visual Examination Report

Generated 2026-06-13 23:38 UTC · theme: default-dark · 18 expressions
Relativity (18 expressions)
mass_energy
$$E = mc^2$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  E["$E$"]:::scalar
  __multiply_2(("$\times$")):::operator
  m["$m$"]:::scalar
  __power_3(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  E --> __equals_1
  m --> __multiply_2
  c --> __power_3
  __power_3 --> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
E = mc^2
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "E = mc^2",
      "chartScript": {
        "script": "E - pow(c, 2)*m",
        "variables": [
          "E",
          "c",
          "m"
        ]
      }
    },
    {
      "id": "E",
      "type": "scalar",
      "latex": "E",
      "subexpr": "E",
      "chartScript": {
        "script": "E",
        "variables": [
          "E"
        ]
      }
    },
    {
      "id": "__multiply_2",
      "type": "operator",
      "op": "multiply",
      "subexpr": "m c^{2}",
      "chartScript": {
        "script": "pow(c, 2)*m",
        "variables": [
          "c",
          "m"
        ]
      }
    },
    {
      "id": "m",
      "type": "scalar",
      "latex": "m",
      "subexpr": "m",
      "chartScript": {
        "script": "m",
        "variables": [
          "m"
        ]
      }
    },
    {
      "id": "__power_3",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "c^{2}",
      "chartScript": {
        "script": "pow(c, 2)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "c",
      "type": "scalar",
      "latex": "c",
      "subexpr": "c",
      "chartScript": {
        "script": "c",
        "variables": [
          "c"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "E",
      "to": "__equals_1"
    },
    {
      "from": "m",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "c",
      "to": "__power_3"
    },
    {
      "from": "__power_3",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_2",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  E["$E$"]:::scalar
  __multiply_2(("$\times$")):::operator
  m["$m$"]:::scalar
  __power_3(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  E --> __equals_1
  m --> __multiply_2
  c --> __power_3
  __power_3 --> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
Click D3 to render
lorentz_factor
$$\gamma = \frac{1}{\sqrt{1 - \frac{v^2}{c^2}}}$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  gamma["$\gamma$"]:::scalar
  __power_2(("$\dfrac{1}{(\cdot)}$")):::operator
  __power_3(("${(\cdot)}^{1/2}$")):::operator
  __add_4(("$+$")):::operator
  __num_5["$1$"]:::number
  __negation_6@{ shape: "flip-tri", label: "$-$" }
  __multiply_7(("$\times$")):::operator
  __power_8(("${(\cdot)}^{2}$")):::operator
  v["$v$"]:::scalar
  __power_9(("$\dfrac{1}{(\cdot)}$")):::operator
  __power_10(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  class __negation_6 operator
  gamma --> __equals_1
  __num_5 --> __add_4
  v --> __power_8
  __power_8 --> __multiply_7
  c --> __power_10
  __power_10 --> __power_9
  __power_9 -.-> __multiply_7
  __multiply_7 --> __negation_6
  __negation_6 --> __add_4
  __add_4 --> __power_3
  __power_3 --> __power_2
  __power_2 -.-> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:6px
  linkStyle 6 stroke:#42a5f5,stroke-width:1px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#aaa,stroke-width:2px
  linkStyle 10 stroke:#aaa,stroke-width:2px
  linkStyle 11 stroke:#42a5f5,stroke-width:1px
\gamma = \frac{1}{\sqrt{1 - \frac{v^2}{c^2}}}
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "\\gamma = \\frac{1}{\\sqrt{1 - \\frac{v^2}{c^2}}}",
      "chartScript": {
        "script": "gamma - 1/sqrt(1 - pow(v, 2)/pow(c, 2))",
        "variables": [
          "c",
          "gamma",
          "v"
        ]
      }
    },
    {
      "id": "gamma",
      "type": "scalar",
      "latex": "\\gamma",
      "subexpr": "\\gamma",
      "chartScript": {
        "script": "gamma",
        "variables": [
          "gamma"
        ]
      }
    },
    {
      "id": "__power_2",
      "type": "operator",
      "latex": "\\dfrac{1}{(\\cdot)}",
      "op": "power",
      "exponent": "-1",
      "subexpr": "\\frac{1}{\\sqrt{1 - \\frac{v^{2}}{c^{2}}}}",
      "chartScript": {
        "script": "pow(1 - pow(v, 2)/pow(c, 2), -1/2)",
        "variables": [
          "c",
          "v"
        ]
      }
    },
    {
      "id": "__power_3",
      "type": "operator",
      "op": "power",
      "exponent": "1/2",
      "subexpr": "\\sqrt{1 - \\frac{v^{2}}{c^{2}}}",
      "chartScript": {
        "script": "sqrt(1 - pow(v, 2)/pow(c, 2))",
        "variables": [
          "c",
          "v"
        ]
      }
    },
    {
      "id": "__add_4",
      "type": "operator",
      "op": "add",
      "subexpr": "1 - v^{2} \\frac{1}{c^{2}}",
      "chartScript": {
        "script": "1 - pow(v, 2)/pow(c, 2)",
        "variables": [
          "c",
          "v"
        ]
      }
    },
    {
      "id": "__num_5",
      "type": "number",
      "label": "1",
      "subexpr": "1",
      "chartScript": {
        "script": "1",
        "variables": []
      }
    },
    {
      "id": "__negation_6",
      "type": "operator",
      "op": "negation",
      "subexpr": "-v^{2} \\frac{1}{c^{2}}",
      "chartScript": {
        "script": "-pow(v, 2)/pow(c, 2)",
        "variables": [
          "c",
          "v"
        ]
      }
    },
    {
      "id": "__multiply_7",
      "type": "operator",
      "op": "multiply",
      "subexpr": "v^{2} \\frac{1}{c^{2}}",
      "chartScript": {
        "script": "pow(v, 2)/pow(c, 2)",
        "variables": [
          "c",
          "v"
        ]
      }
    },
    {
      "id": "__power_8",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "v^{2}",
      "chartScript": {
        "script": "pow(v, 2)",
        "variables": [
          "v"
        ]
      }
    },
    {
      "id": "v",
      "type": "scalar",
      "latex": "v",
      "subexpr": "v",
      "chartScript": {
        "script": "v",
        "variables": [
          "v"
        ]
      }
    },
    {
      "id": "__power_9",
      "type": "operator",
      "latex": "\\dfrac{1}{(\\cdot)}",
      "op": "power",
      "exponent": "-1",
      "subexpr": "\\frac{1}{c^{2}}",
      "chartScript": {
        "script": "pow(c, -2)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "__power_10",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "c^{2}",
      "chartScript": {
        "script": "pow(c, 2)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "c",
      "type": "scalar",
      "latex": "c",
      "subexpr": "c",
      "chartScript": {
        "script": "c",
        "variables": [
          "c"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "gamma",
      "to": "__equals_1"
    },
    {
      "from": "__num_5",
      "to": "__add_4"
    },
    {
      "from": "v",
      "to": "__power_8"
    },
    {
      "from": "__power_8",
      "to": "__multiply_7",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "c",
      "to": "__power_10"
    },
    {
      "from": "__power_10",
      "to": "__power_9"
    },
    {
      "from": "__power_9",
      "to": "__multiply_7"
    },
    {
      "from": "__multiply_7",
      "to": "__negation_6"
    },
    {
      "from": "__negation_6",
      "to": "__add_4"
    },
    {
      "from": "__add_4",
      "to": "__power_3"
    },
    {
      "from": "__power_3",
      "to": "__power_2"
    },
    {
      "from": "__power_2",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  gamma["$\gamma$"]:::scalar
  __power_2(("$\dfrac{1}{(\cdot)}$")):::operator
  __power_3(("${(\cdot)}^{1/2}$")):::operator
  __add_4(("$+$")):::operator
  __num_5["$1$"]:::number
  __negation_6@{ shape: "flip-tri", label: "$-$" }
  __multiply_7(("$\times$")):::operator
  __power_8(("${(\cdot)}^{2}$")):::operator
  v["$v$"]:::scalar
  __power_9(("$\dfrac{1}{(\cdot)}$")):::operator
  __power_10(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  class __negation_6 operator
  gamma --> __equals_1
  __num_5 --> __add_4
  v --> __power_8
  __power_8 --> __multiply_7
  c --> __power_10
  __power_10 --> __power_9
  __power_9 -.-> __multiply_7
  __multiply_7 --> __negation_6
  __negation_6 --> __add_4
  __add_4 --> __power_3
  __power_3 --> __power_2
  __power_2 -.-> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:6px
  linkStyle 6 stroke:#42a5f5,stroke-width:1px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#aaa,stroke-width:2px
  linkStyle 10 stroke:#aaa,stroke-width:2px
  linkStyle 11 stroke:#42a5f5,stroke-width:1px
Click D3 to render
energy_momentum
$$E^2 = (pc)^2 + (mc^2)^2$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("${(\cdot)}^{2}$")):::operator
  E["$E$"]:::scalar
  __add_3(("$+$")):::operator
  __power_4(("${(\cdot)}^{2}$")):::operator
  __multiply_5(("$\times$")):::operator
  p["$p$"]:::scalar
  c["$c$"]:::scalar
  __power_6(("${(\cdot)}^{2}$")):::operator
  __multiply_7(("$\times$")):::operator
  m["$m$"]:::scalar
  __power_8(("${(\cdot)}^{2}$")):::operator
  E --> __power_2
  __power_2 --> __equals_1
  p --> __multiply_5
  c --> __multiply_5
  __multiply_5 --> __power_4
  __power_4 --> __add_3
  m --> __multiply_7
  c --> __power_8
  __power_8 --> __multiply_7
  __multiply_7 --> __power_6
  __power_6 --> __add_3
  __add_3 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:6px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:6px
  linkStyle 6 stroke:#ef5350,stroke-width:3px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#ef5350,stroke-width:3px
  linkStyle 9 stroke:#aaa,stroke-width:2px
  linkStyle 10 stroke:#ef5350,stroke-width:6px
  linkStyle 11 stroke:#aaa,stroke-width:2px
E^2 = (pc)^2 + (mc^2)^2
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "E^2 = (pc)^2 + (mc^2)^2",
      "chartScript": {
        "script": "pow(E, 2) - pow(c, 4)*pow(m, 2) - pow(c, 2)*pow(p, 2)",
        "variables": [
          "E",
          "c",
          "m",
          "p"
        ]
      }
    },
    {
      "id": "__power_2",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "E^{2}",
      "chartScript": {
        "script": "pow(E, 2)",
        "variables": [
          "E"
        ]
      }
    },
    {
      "id": "E",
      "type": "scalar",
      "latex": "E",
      "subexpr": "E",
      "chartScript": {
        "script": "E",
        "variables": [
          "E"
        ]
      }
    },
    {
      "id": "__add_3",
      "type": "operator",
      "op": "add",
      "subexpr": "\\left(c p\\right)^{2} + \\left(c^{2} m\\right)^{2}",
      "chartScript": {
        "script": "pow(c, 4)*pow(m, 2) + pow(c, 2)*pow(p, 2)",
        "variables": [
          "c",
          "m",
          "p"
        ]
      }
    },
    {
      "id": "__power_4",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "\\left(c p\\right)^{2}",
      "chartScript": {
        "script": "pow(c, 2)*pow(p, 2)",
        "variables": [
          "c",
          "p"
        ]
      }
    },
    {
      "id": "__multiply_5",
      "type": "operator",
      "op": "multiply",
      "subexpr": "p c",
      "chartScript": {
        "script": "c*p",
        "variables": [
          "c",
          "p"
        ]
      }
    },
    {
      "id": "p",
      "type": "scalar",
      "latex": "p",
      "subexpr": "p",
      "chartScript": {
        "script": "p",
        "variables": [
          "p"
        ]
      }
    },
    {
      "id": "c",
      "type": "scalar",
      "latex": "c",
      "subexpr": "c",
      "chartScript": {
        "script": "c",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "__power_6",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "\\left(c^{2} m\\right)^{2}",
      "chartScript": {
        "script": "pow(c, 4)*pow(m, 2)",
        "variables": [
          "c",
          "m"
        ]
      }
    },
    {
      "id": "__multiply_7",
      "type": "operator",
      "op": "multiply",
      "subexpr": "c^{2} m",
      "chartScript": {
        "script": "pow(c, 2)*m",
        "variables": [
          "c",
          "m"
        ]
      }
    },
    {
      "id": "m",
      "type": "scalar",
      "latex": "m",
      "subexpr": "m",
      "chartScript": {
        "script": "m",
        "variables": [
          "m"
        ]
      }
    },
    {
      "id": "__power_8",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "c^{2}",
      "chartScript": {
        "script": "pow(c, 2)",
        "variables": [
          "c"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "E",
      "to": "__power_2"
    },
    {
      "from": "__power_2",
      "to": "__equals_1"
    },
    {
      "from": "p",
      "to": "__multiply_5",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "c",
      "to": "__multiply_5",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_5",
      "to": "__power_4"
    },
    {
      "from": "__power_4",
      "to": "__add_3"
    },
    {
      "from": "m",
      "to": "__multiply_7",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "c",
      "to": "__power_8"
    },
    {
      "from": "__power_8",
      "to": "__multiply_7",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_7",
      "to": "__power_6"
    },
    {
      "from": "__power_6",
      "to": "__add_3"
    },
    {
      "from": "__add_3",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("${(\cdot)}^{2}$")):::operator
  E["$E$"]:::scalar
  __add_3(("$+$")):::operator
  __power_4(("${(\cdot)}^{2}$")):::operator
  __multiply_5(("$\times$")):::operator
  p["$p$"]:::scalar
  c["$c$"]:::scalar
  __power_6(("${(\cdot)}^{2}$")):::operator
  __multiply_7(("$\times$")):::operator
  m["$m$"]:::scalar
  __power_8(("${(\cdot)}^{2}$")):::operator
  E --> __power_2
  __power_2 --> __equals_1
  p --> __multiply_5
  c --> __multiply_5
  __multiply_5 --> __power_4
  __power_4 --> __add_3
  m --> __multiply_7
  c --> __power_8
  __power_8 --> __multiply_7
  __multiply_7 --> __power_6
  __power_6 --> __add_3
  __add_3 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:6px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:6px
  linkStyle 6 stroke:#ef5350,stroke-width:3px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#ef5350,stroke-width:3px
  linkStyle 9 stroke:#aaa,stroke-width:2px
  linkStyle 10 stroke:#ef5350,stroke-width:6px
  linkStyle 11 stroke:#aaa,stroke-width:2px
Click D3 to render
length_contraction
$$L = \frac{L_0}{\gamma}$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  L["$L$"]:::scalar
  __multiply_2(("$\times$")):::operator
  L_0["$L_{0}$"]:::scalar
  __power_3(("$\dfrac{1}{(\cdot)}$")):::operator
  gamma["$\gamma$"]:::scalar
  L --> __equals_1
  L_0 --> __multiply_2
  gamma --> __power_3
  __power_3 -.-> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#42a5f5,stroke-width:1px
  linkStyle 4 stroke:#aaa,stroke-width:2px
L = \frac{L_0}{\gamma}
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "L = \\frac{L_0}{\\gamma}",
      "chartScript": {
        "script": "L - L_0/gamma",
        "variables": [
          "L",
          "L_0",
          "gamma"
        ]
      }
    },
    {
      "id": "L",
      "type": "scalar",
      "latex": "L",
      "subexpr": "L",
      "chartScript": {
        "script": "L",
        "variables": [
          "L"
        ]
      }
    },
    {
      "id": "__multiply_2",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\frac{1}{\\gamma} L_{0}",
      "chartScript": {
        "script": "L_0/gamma",
        "variables": [
          "L_0",
          "gamma"
        ]
      }
    },
    {
      "id": "L_0",
      "type": "scalar",
      "latex": "L_{0}",
      "subexpr": "L_{0}",
      "chartScript": {
        "script": "L_0",
        "variables": [
          "L_0"
        ]
      }
    },
    {
      "id": "__power_3",
      "type": "operator",
      "latex": "\\dfrac{1}{(\\cdot)}",
      "op": "power",
      "exponent": "-1",
      "subexpr": "\\frac{1}{\\gamma}",
      "chartScript": {
        "script": "1/gamma",
        "variables": [
          "gamma"
        ]
      }
    },
    {
      "id": "gamma",
      "type": "scalar",
      "latex": "\\gamma",
      "subexpr": "\\gamma",
      "chartScript": {
        "script": "gamma",
        "variables": [
          "gamma"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "L",
      "to": "__equals_1"
    },
    {
      "from": "L_0",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "gamma",
      "to": "__power_3"
    },
    {
      "from": "__power_3",
      "to": "__multiply_2"
    },
    {
      "from": "__multiply_2",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  L["$L$"]:::scalar
  __multiply_2(("$\times$")):::operator
  L_0["$L_{0}$"]:::scalar
  __power_3(("$\dfrac{1}{(\cdot)}$")):::operator
  gamma["$\gamma$"]:::scalar
  L --> __equals_1
  L_0 --> __multiply_2
  gamma --> __power_3
  __power_3 -.-> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#42a5f5,stroke-width:1px
  linkStyle 4 stroke:#aaa,stroke-width:2px
Click D3 to render
minkowski_metric
$$ds^2 = -c^2 dt^2 + dx^2 + dy^2 + dz^2$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("${(\cdot)}^{2}$")):::operator
  ds["$ds$"]:::scalar
  __add_3(("$+$")):::operator
  __add_4(("$+$")):::operator
  __add_5(("$+$")):::operator
  __negation_6@{ shape: "flip-tri", label: "$-$" }
  __multiply_7(("$\times$")):::operator
  __power_8(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  __power_9(("${(\cdot)}^{2}$")):::operator
  dt["$dt$"]:::scalar
  __power_10(("${(\cdot)}^{2}$")):::operator
  dx["$dx$"]:::scalar
  __power_11(("${(\cdot)}^{2}$")):::operator
  dy["$dy$"]:::scalar
  __power_12(("${(\cdot)}^{2}$")):::operator
  dz["$dz$"]:::scalar
  class __negation_6 operator
  ds --> __power_2
  __power_2 --> __equals_1
  c --> __power_8
  __power_8 --> __multiply_7
  dt --> __power_9
  __power_9 --> __multiply_7
  __multiply_7 --> __negation_6
  __negation_6 --> __add_5
  dx --> __power_10
  __power_10 --> __add_5
  __add_5 --> __add_4
  dy --> __power_11
  __power_11 --> __add_4
  __add_4 --> __add_3
  dz --> __power_12
  __power_12 --> __add_3
  __add_3 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:6px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#ef5350,stroke-width:6px
  linkStyle 10 stroke:#aaa,stroke-width:2px
  linkStyle 11 stroke:#aaa,stroke-width:2px
  linkStyle 12 stroke:#ef5350,stroke-width:6px
  linkStyle 13 stroke:#aaa,stroke-width:2px
  linkStyle 14 stroke:#aaa,stroke-width:2px
  linkStyle 15 stroke:#ef5350,stroke-width:6px
  linkStyle 16 stroke:#aaa,stroke-width:2px
ds^2 = -c^2 dt^2 + dx^2 + dy^2 + dz^2
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "ds^2 = -c^2 dt^2 + dx^2 + dy^2 + dz^2",
      "chartScript": {
        "script": "pow(c, 2)*pow(dt, 2) + pow(ds, 2) - pow(dx, 2) - pow(dy, 2) - pow(dz, 2)",
        "variables": [
          "c",
          "ds",
          "dt",
          "dx",
          "dy",
          "dz"
        ]
      }
    },
    {
      "id": "__power_2",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "ds^{2}",
      "chartScript": {
        "script": "pow(ds, 2)",
        "variables": [
          "ds"
        ]
      }
    },
    {
      "id": "ds",
      "type": "scalar",
      "latex": "ds",
      "subexpr": "ds",
      "chartScript": {
        "script": "ds",
        "variables": [
          "ds"
        ]
      }
    },
    {
      "id": "__add_3",
      "type": "operator",
      "op": "add",
      "subexpr": "dz^{2} + dy^{2} - c^{2} dt^{2} + dx^{2}",
      "chartScript": {
        "script": "-pow(c, 2)*pow(dt, 2) + pow(dx, 2) + pow(dy, 2) + pow(dz, 2)",
        "variables": [
          "c",
          "dt",
          "dx",
          "dy",
          "dz"
        ]
      }
    },
    {
      "id": "__add_4",
      "type": "operator",
      "op": "add",
      "subexpr": "dy^{2} - c^{2} dt^{2} + dx^{2}",
      "chartScript": {
        "script": "-pow(c, 2)*pow(dt, 2) + pow(dx, 2) + pow(dy, 2)",
        "variables": [
          "c",
          "dt",
          "dx",
          "dy"
        ]
      }
    },
    {
      "id": "__add_5",
      "type": "operator",
      "op": "add",
      "subexpr": "-c^{2} dt^{2} + dx^{2}",
      "chartScript": {
        "script": "-pow(c, 2)*pow(dt, 2) + pow(dx, 2)",
        "variables": [
          "c",
          "dt",
          "dx"
        ]
      }
    },
    {
      "id": "__negation_6",
      "type": "operator",
      "op": "negation",
      "subexpr": "-c^{2} dt^{2}",
      "chartScript": {
        "script": "-pow(c, 2)*pow(dt, 2)",
        "variables": [
          "c",
          "dt"
        ]
      }
    },
    {
      "id": "__multiply_7",
      "type": "operator",
      "op": "multiply",
      "subexpr": "c^{2} dt^{2}",
      "chartScript": {
        "script": "pow(c, 2)*pow(dt, 2)",
        "variables": [
          "c",
          "dt"
        ]
      }
    },
    {
      "id": "__power_8",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "c^{2}",
      "chartScript": {
        "script": "pow(c, 2)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "c",
      "type": "scalar",
      "latex": "c",
      "subexpr": "c",
      "chartScript": {
        "script": "c",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "__power_9",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "dt^{2}",
      "chartScript": {
        "script": "pow(dt, 2)",
        "variables": [
          "dt"
        ]
      }
    },
    {
      "id": "dt",
      "type": "scalar",
      "latex": "dt",
      "subexpr": "dt",
      "chartScript": {
        "script": "dt",
        "variables": [
          "dt"
        ]
      }
    },
    {
      "id": "__power_10",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "dx^{2}",
      "chartScript": {
        "script": "pow(dx, 2)",
        "variables": [
          "dx"
        ]
      }
    },
    {
      "id": "dx",
      "type": "scalar",
      "latex": "dx",
      "subexpr": "dx",
      "chartScript": {
        "script": "dx",
        "variables": [
          "dx"
        ]
      }
    },
    {
      "id": "__power_11",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "dy^{2}",
      "chartScript": {
        "script": "pow(dy, 2)",
        "variables": [
          "dy"
        ]
      }
    },
    {
      "id": "dy",
      "type": "scalar",
      "latex": "dy",
      "subexpr": "dy",
      "chartScript": {
        "script": "dy",
        "variables": [
          "dy"
        ]
      }
    },
    {
      "id": "__power_12",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "dz^{2}",
      "chartScript": {
        "script": "pow(dz, 2)",
        "variables": [
          "dz"
        ]
      }
    },
    {
      "id": "dz",
      "type": "scalar",
      "latex": "dz",
      "subexpr": "dz",
      "chartScript": {
        "script": "dz",
        "variables": [
          "dz"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "ds",
      "to": "__power_2"
    },
    {
      "from": "__power_2",
      "to": "__equals_1"
    },
    {
      "from": "c",
      "to": "__power_8"
    },
    {
      "from": "__power_8",
      "to": "__multiply_7",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "dt",
      "to": "__power_9"
    },
    {
      "from": "__power_9",
      "to": "__multiply_7",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_7",
      "to": "__negation_6"
    },
    {
      "from": "__negation_6",
      "to": "__add_5"
    },
    {
      "from": "dx",
      "to": "__power_10"
    },
    {
      "from": "__power_10",
      "to": "__add_5"
    },
    {
      "from": "__add_5",
      "to": "__add_4"
    },
    {
      "from": "dy",
      "to": "__power_11"
    },
    {
      "from": "__power_11",
      "to": "__add_4"
    },
    {
      "from": "__add_4",
      "to": "__add_3"
    },
    {
      "from": "dz",
      "to": "__power_12"
    },
    {
      "from": "__power_12",
      "to": "__add_3"
    },
    {
      "from": "__add_3",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("${(\cdot)}^{2}$")):::operator
  ds["$ds$"]:::scalar
  __add_3(("$+$")):::operator
  __add_4(("$+$")):::operator
  __add_5(("$+$")):::operator
  __negation_6@{ shape: "flip-tri", label: "$-$" }
  __multiply_7(("$\times$")):::operator
  __power_8(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  __power_9(("${(\cdot)}^{2}$")):::operator
  dt["$dt$"]:::scalar
  __power_10(("${(\cdot)}^{2}$")):::operator
  dx["$dx$"]:::scalar
  __power_11(("${(\cdot)}^{2}$")):::operator
  dy["$dy$"]:::scalar
  __power_12(("${(\cdot)}^{2}$")):::operator
  dz["$dz$"]:::scalar
  class __negation_6 operator
  ds --> __power_2
  __power_2 --> __equals_1
  c --> __power_8
  __power_8 --> __multiply_7
  dt --> __power_9
  __power_9 --> __multiply_7
  __multiply_7 --> __negation_6
  __negation_6 --> __add_5
  dx --> __power_10
  __power_10 --> __add_5
  __add_5 --> __add_4
  dy --> __power_11
  __power_11 --> __add_4
  __add_4 --> __add_3
  dz --> __power_12
  __power_12 --> __add_3
  __add_3 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:6px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#ef5350,stroke-width:6px
  linkStyle 10 stroke:#aaa,stroke-width:2px
  linkStyle 11 stroke:#aaa,stroke-width:2px
  linkStyle 12 stroke:#ef5350,stroke-width:6px
  linkStyle 13 stroke:#aaa,stroke-width:2px
  linkStyle 14 stroke:#aaa,stroke-width:2px
  linkStyle 15 stroke:#ef5350,stroke-width:6px
  linkStyle 16 stroke:#aaa,stroke-width:2px
Click D3 to render
metric_tensor
$$ds^2 = g_{\mu\nu} dx^\mu dx^\nu$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("${(\cdot)}^{2}$")):::operator
  ds["$ds$"]:::scalar
  __multiply_3(("$\times$")):::operator
  g_munu["$g_{\mu\nu}$"]:::scalar
  __multiply_4(("$\times$")):::operator
  __power_5(("$(\cdot)^{\cdot}$")):::operator
  dx["$dx$"]:::scalar
  mu["$\mu$"]:::scalar
  __power_6(("$(\cdot)^{\cdot}$")):::operator
  nu["$\nu$"]:::scalar
  ds --> __power_2
  __power_2 --> __equals_1
  g_munu --> __multiply_3
  dx --> __power_5
  mu -->|exp| __power_5
  __power_5 --> __multiply_4
  dx --> __power_6
  nu -->|exp| __power_6
  __power_6 --> __multiply_4
  __multiply_4 --> __multiply_3
  __multiply_3 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:6px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#aaa,stroke-width:2px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#ef5350,stroke-width:3px
  linkStyle 9 stroke:#ef5350,stroke-width:3px
  linkStyle 10 stroke:#aaa,stroke-width:2px
ds^2 = g_{\mu\nu} dx^\mu dx^\nu
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "ds^2 = g_{\\mu\\nu} dx^\\mu dx^\\nu",
      "chartScript": {
        "script": "pow(ds, 2) - pow(dx, mu)*pow(dx, nu)*g_mu*nu",
        "variables": [
          "ds",
          "dx",
          "g_mu*nu",
          "mu",
          "nu"
        ]
      }
    },
    {
      "id": "__power_2",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "ds^{2}",
      "chartScript": {
        "script": "pow(ds, 2)",
        "variables": [
          "ds"
        ]
      }
    },
    {
      "id": "ds",
      "type": "scalar",
      "latex": "ds",
      "subexpr": "ds",
      "chartScript": {
        "script": "ds",
        "variables": [
          "ds"
        ]
      }
    },
    {
      "id": "__multiply_3",
      "type": "operator",
      "op": "multiply",
      "subexpr": "g_{\\mu\\nu} dx^{\\mu} dx^{\\nu}",
      "chartScript": {
        "script": "pow(dx, mu)*pow(dx, nu)*g_mu*nu",
        "variables": [
          "dx",
          "g_mu*nu",
          "mu",
          "nu"
        ]
      }
    },
    {
      "id": "g_munu",
      "type": "scalar",
      "latex": "g_{\\mu\\nu}",
      "subexpr": "g_{\\mu\\nu}",
      "chartScript": {
        "script": "g_mu*nu",
        "variables": [
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "__multiply_4",
      "type": "operator",
      "op": "multiply",
      "subexpr": "dx^{\\mu} dx^{\\nu}",
      "chartScript": {
        "script": "pow(dx, mu)*pow(dx, nu)",
        "variables": [
          "dx",
          "mu",
          "nu"
        ]
      }
    },
    {
      "id": "__power_5",
      "type": "operator",
      "op": "power",
      "subexpr": "dx^{\\mu}",
      "chartScript": {
        "script": "pow(dx, mu)",
        "variables": [
          "dx",
          "mu"
        ]
      }
    },
    {
      "id": "dx",
      "type": "scalar",
      "latex": "dx",
      "subexpr": "dx",
      "chartScript": {
        "script": "dx",
        "variables": [
          "dx"
        ]
      }
    },
    {
      "id": "mu",
      "type": "scalar",
      "latex": "\\mu",
      "subexpr": "\\mu",
      "chartScript": {
        "script": "mu",
        "variables": [
          "mu"
        ]
      }
    },
    {
      "id": "__power_6",
      "type": "operator",
      "op": "power",
      "subexpr": "dx^{\\nu}",
      "chartScript": {
        "script": "pow(dx, nu)",
        "variables": [
          "dx",
          "nu"
        ]
      }
    },
    {
      "id": "nu",
      "type": "scalar",
      "latex": "\\nu",
      "subexpr": "\\nu",
      "chartScript": {
        "script": "nu",
        "variables": [
          "nu"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "ds",
      "to": "__power_2"
    },
    {
      "from": "__power_2",
      "to": "__equals_1"
    },
    {
      "from": "g_munu",
      "to": "__multiply_3",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "dx",
      "to": "__power_5"
    },
    {
      "from": "mu",
      "to": "__power_5",
      "role": "exp"
    },
    {
      "from": "__power_5",
      "to": "__multiply_4",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "dx",
      "to": "__power_6"
    },
    {
      "from": "nu",
      "to": "__power_6",
      "role": "exp"
    },
    {
      "from": "__power_6",
      "to": "__multiply_4",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_4",
      "to": "__multiply_3",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_3",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("${(\cdot)}^{2}$")):::operator
  ds["$ds$"]:::scalar
  __multiply_3(("$\times$")):::operator
  g_munu["$g_{\mu\nu}$"]:::scalar
  __multiply_4(("$\times$")):::operator
  __power_5(("$(\cdot)^{\cdot}$")):::operator
  dx["$dx$"]:::scalar
  mu["$\mu$"]:::scalar
  __power_6(("$(\cdot)^{\cdot}$")):::operator
  nu["$\nu$"]:::scalar
  ds --> __power_2
  __power_2 --> __equals_1
  g_munu --> __multiply_3
  dx --> __power_5
  mu -->|exp| __power_5
  __power_5 --> __multiply_4
  dx --> __power_6
  nu -->|exp| __power_6
  __power_6 --> __multiply_4
  __multiply_4 --> __multiply_3
  __multiply_3 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:6px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#aaa,stroke-width:2px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#ef5350,stroke-width:3px
  linkStyle 9 stroke:#ef5350,stroke-width:3px
  linkStyle 10 stroke:#aaa,stroke-width:2px
Click D3 to render
einstein_field
$$R_{\mu\nu} - \frac{1}{2} R g_{\mu\nu} + \Lambda g_{\mu\nu} = \frac{8\pi G}{c^4} T_{\mu\nu}$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __add_2(("$+$")):::operator
  __add_3(("$+$")):::operator
  R_munu["$R_{\mu\nu}$"]:::scalar
  __negation_4@{ shape: "flip-tri", label: "$-$" }
  __multiply_5(("$\times$")):::operator
  __power_6(("$\dfrac{1}{(\cdot)}$")):::operator
  __num_7["$2$"]:::number
  __multiply_8(("$\times$")):::operator
  R["$R$"]:::scalar
  g_munu["$g_{\mu\nu}$"]:::scalar
  __multiply_9(("$\times$")):::operator
  Lambda["$\Lambda$"]:::scalar
  __multiply_10(("$\times$")):::operator
  __multiply_11(("$\times$")):::operator
  __multiply_12(("$\times$")):::operator
  __num_13["$8$"]:::number
  __multiply_14(("$\times$")):::operator
  pi["$\pi$"]:::constant
  G["$G$"]:::scalar
  __power_15(("$\dfrac{1}{(\cdot)}$")):::operator
  __power_16(("${(\cdot)}^{4}$")):::operator
  c["$c$"]:::scalar
  T_munu["$T_{\mu\nu}$"]:::scalar
  class __negation_4 operator
  R_munu --> __add_3
  __num_7 --> __power_6
  __power_6 -.-> __multiply_5
  R --> __multiply_8
  g_munu --> __multiply_8
  __multiply_8 --> __multiply_5
  __multiply_5 --> __negation_4
  __negation_4 --> __add_3
  __add_3 --> __add_2
  Lambda --> __multiply_9
  g_munu --> __multiply_9
  __multiply_9 --> __add_2
  __add_2 --> __equals_1
  __num_13 --> __multiply_12
  pi --> __multiply_14
  G --> __multiply_14
  __multiply_14 --> __multiply_12
  __multiply_12 --> __multiply_11
  c --> __power_16
  __power_16 --> __power_15
  __power_15 -.-> __multiply_11
  __multiply_11 --> __multiply_10
  T_munu --> __multiply_10
  __multiply_10 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#42a5f5,stroke-width:1px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#ef5350,stroke-width:3px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#ef5350,stroke-width:3px
  linkStyle 10 stroke:#ef5350,stroke-width:3px
  linkStyle 11 stroke:#aaa,stroke-width:2px
  linkStyle 12 stroke:#aaa,stroke-width:2px
  linkStyle 13 stroke:#ef5350,stroke-width:3px
  linkStyle 14 stroke:#ef5350,stroke-width:3px
  linkStyle 15 stroke:#ef5350,stroke-width:3px
  linkStyle 16 stroke:#ef5350,stroke-width:3px
  linkStyle 17 stroke:#ef5350,stroke-width:3px
  linkStyle 18 stroke:#aaa,stroke-width:2px
  linkStyle 19 stroke:#ef5350,stroke-width:8px
  linkStyle 20 stroke:#42a5f5,stroke-width:1px
  linkStyle 21 stroke:#ef5350,stroke-width:3px
  linkStyle 22 stroke:#ef5350,stroke-width:3px
  linkStyle 23 stroke:#aaa,stroke-width:2px
R_{\mu\nu} - \frac{1}{2} R g_{\mu\nu} + \Lambda g_{\mu\nu} = \frac{8\pi G}{c^4} T_{\mu\nu}
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "R_{\\mu\\nu} - \\frac{1}{2} R g_{\\mu\\nu} + \\Lambda g_{\\mu\\nu} = \\frac{8\\pi G}{c^4} T_{\\mu\\nu}",
      "chartScript": {
        "script": "-8*pi*G*T_mu*nu/pow(c, 4) + Lambda*g_mu*nu - 1/2*R*g_mu*nu + R_mu*nu",
        "variables": [
          "G",
          "Lambda",
          "R",
          "R_mu*nu",
          "T_mu*nu",
          "c",
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "__add_2",
      "type": "operator",
      "op": "add",
      "subexpr": "\\Lambda g_{\\mu\\nu} + R_{\\mu\\nu} - \\frac{1}{2} R g_{\\mu\\nu}",
      "chartScript": {
        "script": "Lambda*g_mu*nu - 1/2*R*g_mu*nu + R_mu*nu",
        "variables": [
          "Lambda",
          "R",
          "R_mu*nu",
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "__add_3",
      "type": "operator",
      "op": "add",
      "subexpr": "R_{\\mu\\nu} - \\frac{1}{2} R g_{\\mu\\nu}",
      "chartScript": {
        "script": "-1/2*R*g_mu*nu + R_mu*nu",
        "variables": [
          "R",
          "R_mu*nu",
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "R_munu",
      "type": "scalar",
      "latex": "R_{\\mu\\nu}",
      "subexpr": "R_{\\mu\\nu}",
      "chartScript": {
        "script": "R_mu*nu",
        "variables": [
          "R_mu*nu"
        ]
      }
    },
    {
      "id": "__negation_4",
      "type": "operator",
      "op": "negation",
      "subexpr": "-\\frac{1}{2} R g_{\\mu\\nu}",
      "chartScript": {
        "script": "-1/2*R*g_mu*nu",
        "variables": [
          "R",
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "__multiply_5",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\frac{1}{2} R g_{\\mu\\nu}",
      "chartScript": {
        "script": "(1/2)*R*g_mu*nu",
        "variables": [
          "R",
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "__power_6",
      "type": "operator",
      "latex": "\\dfrac{1}{(\\cdot)}",
      "op": "power",
      "exponent": "-1",
      "subexpr": "\\frac{1}{2}",
      "chartScript": {
        "script": "1/2",
        "variables": []
      }
    },
    {
      "id": "__num_7",
      "type": "number",
      "label": "2",
      "subexpr": "2",
      "chartScript": {
        "script": "2",
        "variables": []
      }
    },
    {
      "id": "__multiply_8",
      "type": "operator",
      "op": "multiply",
      "subexpr": "R g_{\\mu\\nu}",
      "chartScript": {
        "script": "R*g_mu*nu",
        "variables": [
          "R",
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "R",
      "type": "scalar",
      "latex": "R",
      "subexpr": "R",
      "chartScript": {
        "script": "R",
        "variables": [
          "R"
        ]
      }
    },
    {
      "id": "g_munu",
      "type": "scalar",
      "latex": "g_{\\mu\\nu}",
      "subexpr": "g_{\\mu\\nu}",
      "chartScript": {
        "script": "g_mu*nu",
        "variables": [
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "__multiply_9",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\Lambda g_{\\mu\\nu}",
      "chartScript": {
        "script": "Lambda*g_mu*nu",
        "variables": [
          "Lambda",
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "Lambda",
      "type": "scalar",
      "latex": "\\Lambda",
      "subexpr": "\\Lambda",
      "chartScript": {
        "script": "Lambda",
        "variables": [
          "Lambda"
        ]
      }
    },
    {
      "id": "__multiply_10",
      "type": "operator",
      "op": "multiply",
      "subexpr": "8 \\pi G \\frac{1}{c^{4}} T_{\\mu\\nu}",
      "chartScript": {
        "script": "8*pi*G*T_mu*nu/pow(c, 4)",
        "variables": [
          "G",
          "T_mu*nu",
          "c"
        ]
      }
    },
    {
      "id": "__multiply_11",
      "type": "operator",
      "op": "multiply",
      "subexpr": "8 \\pi G \\frac{1}{c^{4}}",
      "chartScript": {
        "script": "8*pi*G/pow(c, 4)",
        "variables": [
          "G",
          "c"
        ]
      }
    },
    {
      "id": "__multiply_12",
      "type": "operator",
      "op": "multiply",
      "subexpr": "8 \\pi G",
      "chartScript": {
        "script": "8*pi*G",
        "variables": [
          "G"
        ]
      }
    },
    {
      "id": "__num_13",
      "type": "number",
      "label": "8",
      "subexpr": "8",
      "chartScript": {
        "script": "8",
        "variables": []
      }
    },
    {
      "id": "__multiply_14",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\pi G",
      "chartScript": {
        "script": "pi*G",
        "variables": [
          "G"
        ]
      }
    },
    {
      "id": "pi",
      "type": "constant",
      "latex": "\\pi",
      "subexpr": "\\pi",
      "chartScript": {
        "script": "pi",
        "variables": []
      }
    },
    {
      "id": "G",
      "type": "scalar",
      "latex": "G",
      "subexpr": "G",
      "chartScript": {
        "script": "G",
        "variables": [
          "G"
        ]
      }
    },
    {
      "id": "__power_15",
      "type": "operator",
      "latex": "\\dfrac{1}{(\\cdot)}",
      "op": "power",
      "exponent": "-1",
      "subexpr": "\\frac{1}{c^{4}}",
      "chartScript": {
        "script": "pow(c, -4)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "__power_16",
      "type": "operator",
      "op": "power",
      "exponent": "4",
      "subexpr": "c^{4}",
      "chartScript": {
        "script": "pow(c, 4)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "c",
      "type": "scalar",
      "latex": "c",
      "subexpr": "c",
      "chartScript": {
        "script": "c",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "T_munu",
      "type": "scalar",
      "latex": "T_{\\mu\\nu}",
      "subexpr": "T_{\\mu\\nu}",
      "chartScript": {
        "script": "T_mu*nu",
        "variables": [
          "T_mu*nu"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "R_munu",
      "to": "__add_3"
    },
    {
      "from": "__num_7",
      "to": "__power_6"
    },
    {
      "from": "__power_6",
      "to": "__multiply_5"
    },
    {
      "from": "R",
      "to": "__multiply_8",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "g_munu",
      "to": "__multiply_8",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_8",
      "to": "__multiply_5",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_5",
      "to": "__negation_4"
    },
    {
      "from": "__negation_4",
      "to": "__add_3"
    },
    {
      "from": "__add_3",
      "to": "__add_2"
    },
    {
      "from": "Lambda",
      "to": "__multiply_9",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "g_munu",
      "to": "__multiply_9",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_9",
      "to": "__add_2"
    },
    {
      "from": "__add_2",
      "to": "__equals_1"
    },
    {
      "from": "__num_13",
      "to": "__multiply_12",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "pi",
      "to": "__multiply_14",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "G",
      "to": "__multiply_14",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_14",
      "to": "__multiply_12",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_12",
      "to": "__multiply_11",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "c",
      "to": "__power_16"
    },
    {
      "from": "__power_16",
      "to": "__power_15"
    },
    {
      "from": "__power_15",
      "to": "__multiply_11"
    },
    {
      "from": "__multiply_11",
      "to": "__multiply_10",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "T_munu",
      "to": "__multiply_10",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_10",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __add_2(("$+$")):::operator
  __add_3(("$+$")):::operator
  R_munu["$R_{\mu\nu}$"]:::scalar
  __negation_4@{ shape: "flip-tri", label: "$-$" }
  __multiply_5(("$\times$")):::operator
  __power_6(("$\dfrac{1}{(\cdot)}$")):::operator
  __num_7["$2$"]:::number
  __multiply_8(("$\times$")):::operator
  R["$R$"]:::scalar
  g_munu["$g_{\mu\nu}$"]:::scalar
  __multiply_9(("$\times$")):::operator
  Lambda["$\Lambda$"]:::scalar
  __multiply_10(("$\times$")):::operator
  __multiply_11(("$\times$")):::operator
  __multiply_12(("$\times$")):::operator
  __num_13["$8$"]:::number
  __multiply_14(("$\times$")):::operator
  pi["$\pi$"]:::constant
  G["$G$"]:::scalar
  __power_15(("$\dfrac{1}{(\cdot)}$")):::operator
  __power_16(("${(\cdot)}^{4}$")):::operator
  c["$c$"]:::scalar
  T_munu["$T_{\mu\nu}$"]:::scalar
  class __negation_4 operator
  R_munu --> __add_3
  __num_7 --> __power_6
  __power_6 -.-> __multiply_5
  R --> __multiply_8
  g_munu --> __multiply_8
  __multiply_8 --> __multiply_5
  __multiply_5 --> __negation_4
  __negation_4 --> __add_3
  __add_3 --> __add_2
  Lambda --> __multiply_9
  g_munu --> __multiply_9
  __multiply_9 --> __add_2
  __add_2 --> __equals_1
  __num_13 --> __multiply_12
  pi --> __multiply_14
  G --> __multiply_14
  __multiply_14 --> __multiply_12
  __multiply_12 --> __multiply_11
  c --> __power_16
  __power_16 --> __power_15
  __power_15 -.-> __multiply_11
  __multiply_11 --> __multiply_10
  T_munu --> __multiply_10
  __multiply_10 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#42a5f5,stroke-width:1px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#ef5350,stroke-width:3px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#ef5350,stroke-width:3px
  linkStyle 10 stroke:#ef5350,stroke-width:3px
  linkStyle 11 stroke:#aaa,stroke-width:2px
  linkStyle 12 stroke:#aaa,stroke-width:2px
  linkStyle 13 stroke:#ef5350,stroke-width:3px
  linkStyle 14 stroke:#ef5350,stroke-width:3px
  linkStyle 15 stroke:#ef5350,stroke-width:3px
  linkStyle 16 stroke:#ef5350,stroke-width:3px
  linkStyle 17 stroke:#ef5350,stroke-width:3px
  linkStyle 18 stroke:#aaa,stroke-width:2px
  linkStyle 19 stroke:#ef5350,stroke-width:8px
  linkStyle 20 stroke:#42a5f5,stroke-width:1px
  linkStyle 21 stroke:#ef5350,stroke-width:3px
  linkStyle 22 stroke:#ef5350,stroke-width:3px
  linkStyle 23 stroke:#aaa,stroke-width:2px
Click D3 to render
proper_time
$$\tau = \int \sqrt{-g_{\mu\nu} dx^\mu dx^\nu}$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  tau["$\tau$"]:::scalar
  x["$x$"]:::scalar
  __integral_2(("$\int dx$")):::operator
  __power_3(("${(\cdot)}^{1/2}$")):::operator
  __negation_4@{ shape: "flip-tri", label: "$-$" }
  g_munu["$g_{\mu\nu}$"]:::scalar
  class __negation_4 operator
  tau --> __equals_1
  x -->|wrt| __integral_2
  g_munu --> __negation_4
  __negation_4 --> __power_3
  __power_3 --> __integral_2
  __integral_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#aaa,stroke-width:2px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#aaa,stroke-width:2px
\tau = \int \sqrt{-g_{\mu\nu} dx^\mu dx^\nu}
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "\\tau = \\int \\sqrt{-g_{\\mu\\nu} dx^\\mu dx^\\nu}",
      "chartScript": {
        "script": "tau - x*sqrt(-g_mu*nu)",
        "variables": [
          "g_mu*nu",
          "tau",
          "x"
        ]
      }
    },
    {
      "id": "tau",
      "type": "scalar",
      "latex": "\\tau",
      "subexpr": "\\tau",
      "chartScript": {
        "script": "tau",
        "variables": [
          "tau"
        ]
      }
    },
    {
      "id": "x",
      "type": "scalar",
      "latex": "x",
      "subexpr": "x",
      "chartScript": {
        "script": "x",
        "variables": [
          "x"
        ]
      }
    },
    {
      "id": "__integral_2",
      "type": "operator",
      "op": "integral",
      "with_respect_to": "x",
      "subexpr": "\\int \\sqrt{- g_{\\mu\\nu}}\\, dx",
      "chartScript": {
        "script": "x*sqrt(-g_mu*nu)",
        "variables": [
          "g_mu*nu",
          "x"
        ]
      }
    },
    {
      "id": "__power_3",
      "type": "operator",
      "op": "power",
      "exponent": "1/2",
      "subexpr": "\\sqrt{- g_{\\mu\\nu}}",
      "chartScript": {
        "script": "sqrt(-g_mu*nu)",
        "variables": [
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "__negation_4",
      "type": "operator",
      "op": "negation",
      "subexpr": "-g_{\\mu\\nu}",
      "chartScript": {
        "script": "-g_mu*nu",
        "variables": [
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "g_munu",
      "type": "scalar",
      "latex": "g_{\\mu\\nu}",
      "subexpr": "g_{\\mu\\nu}",
      "chartScript": {
        "script": "g_mu*nu",
        "variables": [
          "g_mu*nu"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "tau",
      "to": "__equals_1"
    },
    {
      "from": "x",
      "to": "__integral_2",
      "role": "wrt"
    },
    {
      "from": "g_munu",
      "to": "__negation_4"
    },
    {
      "from": "__negation_4",
      "to": "__power_3"
    },
    {
      "from": "__power_3",
      "to": "__integral_2"
    },
    {
      "from": "__integral_2",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  tau["$\tau$"]:::scalar
  x["$x$"]:::scalar
  __integral_2(("$\int dx$")):::operator
  __power_3(("${(\cdot)}^{1/2}$")):::operator
  __negation_4@{ shape: "flip-tri", label: "$-$" }
  g_munu["$g_{\mu\nu}$"]:::scalar
  class __negation_4 operator
  tau --> __equals_1
  x -->|wrt| __integral_2
  g_munu --> __negation_4
  __negation_4 --> __power_3
  __power_3 --> __integral_2
  __integral_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#aaa,stroke-width:2px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#aaa,stroke-width:2px
Click D3 to render
stress_energy
$$T^{\mu\nu} = (\rho + p) u^\mu u^\nu + p g^{\mu\nu}$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("$(\cdot)^{\cdot}$")):::operator
  T["$T$"]:::scalar
  __multiply_3(("$\times$")):::operator
  mu["$\mu$"]:::scalar
  nu["$\nu$"]:::scalar
  __add_4(("$+$")):::operator
  __multiply_5(("$\times$")):::operator
  __add_6(("$+$")):::operator
  rho["$\rho$"]:::scalar
  p["$p$"]:::scalar
  __multiply_7(("$\times$")):::operator
  __power_8(("$(\cdot)^{\cdot}$")):::operator
  u["$u$"]:::scalar
  __power_9(("$(\cdot)^{\cdot}$")):::operator
  __multiply_10(("$\times$")):::operator
  __power_11(("$(\cdot)^{\cdot}$")):::operator
  g["$g$"]:::scalar
  __multiply_12(("$\times$")):::operator
  T --> __power_2
  mu --> __multiply_3
  nu --> __multiply_3
  __multiply_3 -->|exp| __power_2
  __power_2 --> __equals_1
  rho --> __add_6
  p --> __add_6
  __add_6 --> __multiply_5
  u --> __power_8
  mu -->|exp| __power_8
  __power_8 --> __multiply_7
  u --> __power_9
  nu -->|exp| __power_9
  __power_9 --> __multiply_7
  __multiply_7 --> __multiply_5
  __multiply_5 --> __add_4
  p --> __multiply_10
  g --> __power_11
  mu --> __multiply_12
  nu --> __multiply_12
  __multiply_12 -->|exp| __power_11
  __power_11 --> __multiply_10
  __multiply_10 --> __add_4
  __add_4 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#aaa,stroke-width:2px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#aaa,stroke-width:2px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#ef5350,stroke-width:3px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#aaa,stroke-width:2px
  linkStyle 10 stroke:#ef5350,stroke-width:3px
  linkStyle 11 stroke:#aaa,stroke-width:2px
  linkStyle 12 stroke:#aaa,stroke-width:2px
  linkStyle 13 stroke:#ef5350,stroke-width:3px
  linkStyle 14 stroke:#ef5350,stroke-width:3px
  linkStyle 15 stroke:#aaa,stroke-width:2px
  linkStyle 16 stroke:#ef5350,stroke-width:3px
  linkStyle 17 stroke:#aaa,stroke-width:2px
  linkStyle 18 stroke:#ef5350,stroke-width:3px
  linkStyle 19 stroke:#ef5350,stroke-width:3px
  linkStyle 20 stroke:#aaa,stroke-width:2px
  linkStyle 21 stroke:#ef5350,stroke-width:3px
  linkStyle 22 stroke:#aaa,stroke-width:2px
  linkStyle 23 stroke:#aaa,stroke-width:2px
T^{\mu\nu} = (\rho + p) u^\mu u^\nu + p g^{\mu\nu}
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "T^{\\mu\\nu} = (\\rho + p) u^\\mu u^\\nu + p g^{\\mu\\nu}",
      "chartScript": {
        "script": "pow(T, mu*nu) - pow(g, mu*nu)*p - pow(u, mu)*pow(u, nu)*(p + rho)",
        "variables": [
          "T",
          "g",
          "mu",
          "nu",
          "p",
          "rho",
          "u"
        ]
      }
    },
    {
      "id": "__power_2",
      "type": "operator",
      "op": "power",
      "subexpr": "T^{\\mu \\nu}",
      "chartScript": {
        "script": "pow(T, mu*nu)",
        "variables": [
          "T",
          "mu",
          "nu"
        ]
      }
    },
    {
      "id": "T",
      "type": "scalar",
      "latex": "T",
      "subexpr": "T",
      "chartScript": {
        "script": "T",
        "variables": [
          "T"
        ]
      }
    },
    {
      "id": "__multiply_3",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\mu \\nu",
      "chartScript": {
        "script": "mu*nu",
        "variables": [
          "mu",
          "nu"
        ]
      }
    },
    {
      "id": "mu",
      "type": "scalar",
      "latex": "\\mu",
      "subexpr": "\\mu",
      "chartScript": {
        "script": "mu",
        "variables": [
          "mu"
        ]
      }
    },
    {
      "id": "nu",
      "type": "scalar",
      "latex": "\\nu",
      "subexpr": "\\nu",
      "chartScript": {
        "script": "nu",
        "variables": [
          "nu"
        ]
      }
    },
    {
      "id": "__add_4",
      "type": "operator",
      "op": "add",
      "subexpr": "p g^{\\mu \\nu} + \\left(\\rho + p\\right) u^{\\mu} u^{\\nu}",
      "chartScript": {
        "script": "pow(g, mu*nu)*p + pow(u, mu)*pow(u, nu)*(p + rho)",
        "variables": [
          "g",
          "mu",
          "nu",
          "p",
          "rho",
          "u"
        ]
      }
    },
    {
      "id": "__multiply_5",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\left(\\rho + p\\right) u^{\\mu} u^{\\nu}",
      "chartScript": {
        "script": "pow(u, mu)*pow(u, nu)*(p + rho)",
        "variables": [
          "mu",
          "nu",
          "p",
          "rho",
          "u"
        ]
      }
    },
    {
      "id": "__add_6",
      "type": "operator",
      "op": "add",
      "subexpr": "\\rho + p",
      "chartScript": {
        "script": "p + rho",
        "variables": [
          "p",
          "rho"
        ]
      }
    },
    {
      "id": "rho",
      "type": "scalar",
      "latex": "\\rho",
      "subexpr": "\\rho",
      "chartScript": {
        "script": "rho",
        "variables": [
          "rho"
        ]
      }
    },
    {
      "id": "p",
      "type": "scalar",
      "latex": "p",
      "subexpr": "p",
      "chartScript": {
        "script": "p",
        "variables": [
          "p"
        ]
      }
    },
    {
      "id": "__multiply_7",
      "type": "operator",
      "op": "multiply",
      "subexpr": "u^{\\mu} u^{\\nu}",
      "chartScript": {
        "script": "pow(u, mu)*pow(u, nu)",
        "variables": [
          "mu",
          "nu",
          "u"
        ]
      }
    },
    {
      "id": "__power_8",
      "type": "operator",
      "op": "power",
      "subexpr": "u^{\\mu}",
      "chartScript": {
        "script": "pow(u, mu)",
        "variables": [
          "mu",
          "u"
        ]
      }
    },
    {
      "id": "u",
      "type": "scalar",
      "latex": "u",
      "subexpr": "u",
      "chartScript": {
        "script": "u",
        "variables": [
          "u"
        ]
      }
    },
    {
      "id": "__power_9",
      "type": "operator",
      "op": "power",
      "subexpr": "u^{\\nu}",
      "chartScript": {
        "script": "pow(u, nu)",
        "variables": [
          "nu",
          "u"
        ]
      }
    },
    {
      "id": "__multiply_10",
      "type": "operator",
      "op": "multiply",
      "subexpr": "p g^{\\mu \\nu}",
      "chartScript": {
        "script": "pow(g, mu*nu)*p",
        "variables": [
          "g",
          "mu",
          "nu",
          "p"
        ]
      }
    },
    {
      "id": "__power_11",
      "type": "operator",
      "op": "power",
      "subexpr": "g^{\\mu \\nu}",
      "chartScript": {
        "script": "pow(g, mu*nu)",
        "variables": [
          "g",
          "mu",
          "nu"
        ]
      }
    },
    {
      "id": "g",
      "type": "scalar",
      "latex": "g",
      "subexpr": "g",
      "chartScript": {
        "script": "g",
        "variables": [
          "g"
        ]
      }
    },
    {
      "id": "__multiply_12",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\mu \\nu",
      "chartScript": {
        "script": "mu*nu",
        "variables": [
          "mu",
          "nu"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "T",
      "to": "__power_2"
    },
    {
      "from": "mu",
      "to": "__multiply_3",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "nu",
      "to": "__multiply_3",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_3",
      "to": "__power_2",
      "role": "exp"
    },
    {
      "from": "__power_2",
      "to": "__equals_1"
    },
    {
      "from": "rho",
      "to": "__add_6"
    },
    {
      "from": "p",
      "to": "__add_6"
    },
    {
      "from": "__add_6",
      "to": "__multiply_5",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "u",
      "to": "__power_8"
    },
    {
      "from": "mu",
      "to": "__power_8",
      "role": "exp"
    },
    {
      "from": "__power_8",
      "to": "__multiply_7",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "u",
      "to": "__power_9"
    },
    {
      "from": "nu",
      "to": "__power_9",
      "role": "exp"
    },
    {
      "from": "__power_9",
      "to": "__multiply_7",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_7",
      "to": "__multiply_5",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_5",
      "to": "__add_4"
    },
    {
      "from": "p",
      "to": "__multiply_10",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "g",
      "to": "__power_11"
    },
    {
      "from": "mu",
      "to": "__multiply_12",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "nu",
      "to": "__multiply_12",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_12",
      "to": "__power_11",
      "role": "exp"
    },
    {
      "from": "__power_11",
      "to": "__multiply_10",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_10",
      "to": "__add_4"
    },
    {
      "from": "__add_4",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("$(\cdot)^{\cdot}$")):::operator
  T["$T$"]:::scalar
  __multiply_3(("$\times$")):::operator
  mu["$\mu$"]:::scalar
  nu["$\nu$"]:::scalar
  __add_4(("$+$")):::operator
  __multiply_5(("$\times$")):::operator
  __add_6(("$+$")):::operator
  rho["$\rho$"]:::scalar
  p["$p$"]:::scalar
  __multiply_7(("$\times$")):::operator
  __power_8(("$(\cdot)^{\cdot}$")):::operator
  u["$u$"]:::scalar
  __power_9(("$(\cdot)^{\cdot}$")):::operator
  __multiply_10(("$\times$")):::operator
  __power_11(("$(\cdot)^{\cdot}$")):::operator
  g["$g$"]:::scalar
  __multiply_12(("$\times$")):::operator
  T --> __power_2
  mu --> __multiply_3
  nu --> __multiply_3
  __multiply_3 -->|exp| __power_2
  __power_2 --> __equals_1
  rho --> __add_6
  p --> __add_6
  __add_6 --> __multiply_5
  u --> __power_8
  mu -->|exp| __power_8
  __power_8 --> __multiply_7
  u --> __power_9
  nu -->|exp| __power_9
  __power_9 --> __multiply_7
  __multiply_7 --> __multiply_5
  __multiply_5 --> __add_4
  p --> __multiply_10
  g --> __power_11
  mu --> __multiply_12
  nu --> __multiply_12
  __multiply_12 -->|exp| __power_11
  __power_11 --> __multiply_10
  __multiply_10 --> __add_4
  __add_4 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#aaa,stroke-width:2px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#aaa,stroke-width:2px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#ef5350,stroke-width:3px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#aaa,stroke-width:2px
  linkStyle 10 stroke:#ef5350,stroke-width:3px
  linkStyle 11 stroke:#aaa,stroke-width:2px
  linkStyle 12 stroke:#aaa,stroke-width:2px
  linkStyle 13 stroke:#ef5350,stroke-width:3px
  linkStyle 14 stroke:#ef5350,stroke-width:3px
  linkStyle 15 stroke:#aaa,stroke-width:2px
  linkStyle 16 stroke:#ef5350,stroke-width:3px
  linkStyle 17 stroke:#aaa,stroke-width:2px
  linkStyle 18 stroke:#ef5350,stroke-width:3px
  linkStyle 19 stroke:#ef5350,stroke-width:3px
  linkStyle 20 stroke:#aaa,stroke-width:2px
  linkStyle 21 stroke:#ef5350,stroke-width:3px
  linkStyle 22 stroke:#aaa,stroke-width:2px
  linkStyle 23 stroke:#aaa,stroke-width:2px
Click D3 to render
conservation_law
$$\nabla_\mu T^{\mu\nu} = 0$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __multiply_2(("$\times$")):::operator
  nabla_mu["$\nabla_{\mu}$"]:::scalar
  __power_3(("$(\cdot)^{\cdot}$")):::operator
  T["$T$"]:::scalar
  __multiply_4(("$\times$")):::operator
  mu["$\mu$"]:::scalar
  nu["$\nu$"]:::scalar
  __num_5["$0$"]:::number
  nabla_mu --> __multiply_2
  T --> __power_3
  mu --> __multiply_4
  nu --> __multiply_4
  __multiply_4 -->|exp| __power_3
  __power_3 --> __multiply_2
  __multiply_2 --> __equals_1
  __num_5 --> __equals_1
  linkStyle 0 stroke:#ef5350,stroke-width:3px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#aaa,stroke-width:2px
\nabla_\mu T^{\mu\nu} = 0
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "\\nabla_\\mu T^{\\mu\\nu} = 0",
      "chartScript": {
        "script": "pow(T, mu*nu)*nabla_mu",
        "variables": [
          "T",
          "mu",
          "nabla_mu",
          "nu"
        ]
      }
    },
    {
      "id": "__multiply_2",
      "type": "operator",
      "op": "multiply",
      "subexpr": "T^{\\mu \\nu} \\nabla_{\\mu}",
      "chartScript": {
        "script": "pow(T, mu*nu)*nabla_mu",
        "variables": [
          "T",
          "mu",
          "nabla_mu",
          "nu"
        ]
      }
    },
    {
      "id": "nabla_mu",
      "type": "scalar",
      "latex": "\\nabla_{\\mu}",
      "subexpr": "\\nabla_{\\mu}",
      "chartScript": {
        "script": "nabla_mu",
        "variables": [
          "nabla_mu"
        ]
      }
    },
    {
      "id": "__power_3",
      "type": "operator",
      "op": "power",
      "subexpr": "T^{\\mu \\nu}",
      "chartScript": {
        "script": "pow(T, mu*nu)",
        "variables": [
          "T",
          "mu",
          "nu"
        ]
      }
    },
    {
      "id": "T",
      "type": "scalar",
      "latex": "T",
      "subexpr": "T",
      "chartScript": {
        "script": "T",
        "variables": [
          "T"
        ]
      }
    },
    {
      "id": "__multiply_4",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\mu \\nu",
      "chartScript": {
        "script": "mu*nu",
        "variables": [
          "mu",
          "nu"
        ]
      }
    },
    {
      "id": "mu",
      "type": "scalar",
      "latex": "\\mu",
      "subexpr": "\\mu",
      "chartScript": {
        "script": "mu",
        "variables": [
          "mu"
        ]
      }
    },
    {
      "id": "nu",
      "type": "scalar",
      "latex": "\\nu",
      "subexpr": "\\nu",
      "chartScript": {
        "script": "nu",
        "variables": [
          "nu"
        ]
      }
    },
    {
      "id": "__num_5",
      "type": "number",
      "label": "0",
      "subexpr": "0",
      "chartScript": {
        "script": "0",
        "variables": []
      }
    }
  ],
  "edges": [
    {
      "from": "nabla_mu",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "T",
      "to": "__power_3"
    },
    {
      "from": "mu",
      "to": "__multiply_4",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "nu",
      "to": "__multiply_4",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_4",
      "to": "__power_3",
      "role": "exp"
    },
    {
      "from": "__power_3",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_2",
      "to": "__equals_1"
    },
    {
      "from": "__num_5",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __multiply_2(("$\times$")):::operator
  nabla_mu["$\nabla_{\mu}$"]:::scalar
  __power_3(("$(\cdot)^{\cdot}$")):::operator
  T["$T$"]:::scalar
  __multiply_4(("$\times$")):::operator
  mu["$\mu$"]:::scalar
  nu["$\nu$"]:::scalar
  __num_5["$0$"]:::number
  nabla_mu --> __multiply_2
  T --> __power_3
  mu --> __multiply_4
  nu --> __multiply_4
  __multiply_4 -->|exp| __power_3
  __power_3 --> __multiply_2
  __multiply_2 --> __equals_1
  __num_5 --> __equals_1
  linkStyle 0 stroke:#ef5350,stroke-width:3px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#aaa,stroke-width:2px
Click D3 to render
metric_inverse
$$g_{\mu\nu} g^{\nu\rho} = \delta^\rho_\mu$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __multiply_2(("$\times$")):::operator
  g_munu["$g_{\mu\nu}$"]:::scalar
  __power_3(("$(\cdot)^{\cdot}$")):::operator
  g["$g$"]:::scalar
  __multiply_4(("$\times$")):::operator
  nu["$\nu$"]:::scalar
  rho["$\rho$"]:::scalar
  __power_5(("$(\cdot)^{\cdot}$")):::operator
  delta_mu["$\delta_{\mu}$"]:::scalar
  g_munu --> __multiply_2
  g --> __power_3
  nu --> __multiply_4
  rho --> __multiply_4
  __multiply_4 -->|exp| __power_3
  __power_3 --> __multiply_2
  __multiply_2 --> __equals_1
  delta_mu --> __power_5
  rho -->|exp| __power_5
  __power_5 --> __equals_1
  linkStyle 0 stroke:#ef5350,stroke-width:3px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#aaa,stroke-width:2px
g_{\mu\nu} g^{\nu\rho} = \delta^\rho_\mu
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "g_{\\mu\\nu} g^{\\nu\\rho} = \\delta^\\rho_\\mu",
      "chartScript": {
        "script": "-pow(delta, rho_mu) + pow(g, nu*rho)*g_mu*nu",
        "variables": [
          "delta",
          "g",
          "g_mu*nu",
          "nu",
          "rho",
          "rho_mu"
        ]
      }
    },
    {
      "id": "__multiply_2",
      "type": "operator",
      "op": "multiply",
      "subexpr": "g^{\\nu \\rho} g_{\\mu\\nu}",
      "chartScript": {
        "script": "pow(g, nu*rho)*g_mu*nu",
        "variables": [
          "g",
          "g_mu*nu",
          "nu",
          "rho"
        ]
      }
    },
    {
      "id": "g_munu",
      "type": "scalar",
      "latex": "g_{\\mu\\nu}",
      "subexpr": "g_{\\mu\\nu}",
      "chartScript": {
        "script": "g_mu*nu",
        "variables": [
          "g_mu*nu"
        ]
      }
    },
    {
      "id": "__power_3",
      "type": "operator",
      "op": "power",
      "subexpr": "g^{\\nu \\rho}",
      "chartScript": {
        "script": "pow(g, nu*rho)",
        "variables": [
          "g",
          "nu",
          "rho"
        ]
      }
    },
    {
      "id": "g",
      "type": "scalar",
      "latex": "g",
      "subexpr": "g",
      "chartScript": {
        "script": "g",
        "variables": [
          "g"
        ]
      }
    },
    {
      "id": "__multiply_4",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\nu \\rho",
      "chartScript": {
        "script": "nu*rho",
        "variables": [
          "nu",
          "rho"
        ]
      }
    },
    {
      "id": "nu",
      "type": "scalar",
      "latex": "\\nu",
      "subexpr": "\\nu",
      "chartScript": {
        "script": "nu",
        "variables": [
          "nu"
        ]
      }
    },
    {
      "id": "rho",
      "type": "scalar",
      "latex": "\\rho",
      "subexpr": "\\rho",
      "chartScript": {
        "script": "rho",
        "variables": [
          "rho"
        ]
      }
    },
    {
      "id": "__power_5",
      "type": "operator",
      "op": "power",
      "subexpr": "\\delta_{\\mu}^{\\rho}",
      "chartScript": {
        "script": "pow(delta_mu, rho)",
        "variables": [
          "delta_mu",
          "rho"
        ]
      }
    },
    {
      "id": "delta_mu",
      "type": "scalar",
      "latex": "\\delta_{\\mu}",
      "subexpr": "\\delta_{\\mu}",
      "chartScript": {
        "script": "delta_mu",
        "variables": [
          "delta_mu"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "g_munu",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "g",
      "to": "__power_3"
    },
    {
      "from": "nu",
      "to": "__multiply_4",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "rho",
      "to": "__multiply_4",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_4",
      "to": "__power_3",
      "role": "exp"
    },
    {
      "from": "__power_3",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_2",
      "to": "__equals_1"
    },
    {
      "from": "delta_mu",
      "to": "__power_5"
    },
    {
      "from": "rho",
      "to": "__power_5",
      "role": "exp"
    },
    {
      "from": "__power_5",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __multiply_2(("$\times$")):::operator
  g_munu["$g_{\mu\nu}$"]:::scalar
  __power_3(("$(\cdot)^{\cdot}$")):::operator
  g["$g$"]:::scalar
  __multiply_4(("$\times$")):::operator
  nu["$\nu$"]:::scalar
  rho["$\rho$"]:::scalar
  __power_5(("$(\cdot)^{\cdot}$")):::operator
  delta_mu["$\delta_{\mu}$"]:::scalar
  g_munu --> __multiply_2
  g --> __power_3
  nu --> __multiply_4
  rho --> __multiply_4
  __multiply_4 -->|exp| __power_3
  __power_3 --> __multiply_2
  __multiply_2 --> __equals_1
  delta_mu --> __power_5
  rho -->|exp| __power_5
  __power_5 --> __equals_1
  linkStyle 0 stroke:#ef5350,stroke-width:3px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#aaa,stroke-width:2px
Click D3 to render
riemann_tensor
$$R^\rho_{\sigma\mu\nu} = \partial_\mu \Gamma^\rho_{\nu\sigma} - \partial_\nu \Gamma^\rho_{\mu\sigma}$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("$(\cdot)^{\cdot}$")):::operator
  R_sigmamunu["$R_{\sigma\mu\nu}$"]:::scalar
  rho["$\rho$"]:::scalar
  __add_3(("$+$")):::operator
  __multiply_4(("$\times$")):::operator
  partial_mu["$\partial_{\mu}$"]:::scalar
  __power_5(("$(\cdot)^{\cdot}$")):::operator
  Gamma_nusigma["$\Gamma_{\nu\sigma}$"]:::scalar
  __negation_6@{ shape: "flip-tri", label: "$-$" }
  __multiply_7(("$\times$")):::operator
  partial_nu["$\partial_{\nu}$"]:::scalar
  __power_8(("$(\cdot)^{\cdot}$")):::operator
  Gamma_musigma["$\Gamma_{\mu\sigma}$"]:::scalar
  class __negation_6 operator
  R_sigmamunu --> __power_2
  rho -->|exp| __power_2
  __power_2 --> __equals_1
  partial_mu --> __multiply_4
  Gamma_nusigma --> __power_5
  rho -->|exp| __power_5
  __power_5 --> __multiply_4
  __multiply_4 --> __add_3
  partial_nu --> __multiply_7
  Gamma_musigma --> __power_8
  rho -->|exp| __power_8
  __power_8 --> __multiply_7
  __multiply_7 --> __negation_6
  __negation_6 --> __add_3
  __add_3 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#aaa,stroke-width:2px
  linkStyle 6 stroke:#ef5350,stroke-width:3px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#ef5350,stroke-width:3px
  linkStyle 9 stroke:#aaa,stroke-width:2px
  linkStyle 10 stroke:#aaa,stroke-width:2px
  linkStyle 11 stroke:#ef5350,stroke-width:3px
  linkStyle 12 stroke:#aaa,stroke-width:2px
  linkStyle 13 stroke:#aaa,stroke-width:2px
  linkStyle 14 stroke:#aaa,stroke-width:2px
R^\rho_{\sigma\mu\nu} = \partial_\mu \Gamma^\rho_{\nu\sigma} - \partial_\nu \Gamma^\rho_{\mu\sigma}
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "R^\\rho_{\\sigma\\mu\\nu} = \\partial_\\mu \\Gamma^\\rho_{\\nu\\sigma} - \\partial_\\nu \\Gamma^\\rho_{\\mu\\sigma}",
      "chartScript": {
        "script": "pow(Gamma, rho_mu*sigma)*partial_nu - pow(Gamma, rho_nu*sigma)*partial_mu + pow(R, rho_sigma*(mu*nu))",
        "variables": [
          "Gamma",
          "R",
          "partial_mu",
          "partial_nu",
          "rho_mu*sigma",
          "rho_nu*sigma",
          "rho_sigma*(mu*nu)"
        ]
      }
    },
    {
      "id": "__power_2",
      "type": "operator",
      "op": "power",
      "subexpr": "R_{\\sigma\\mu\\nu}^{\\rho}",
      "chartScript": {
        "script": "pow(R_sigma*(mu*nu), rho)",
        "variables": [
          "R_sigma*(mu*nu)",
          "rho"
        ]
      }
    },
    {
      "id": "R_sigmamunu",
      "type": "scalar",
      "latex": "R_{\\sigma\\mu\\nu}",
      "subexpr": "R_{\\sigma\\mu\\nu}",
      "chartScript": {
        "script": "R_sigma*(mu*nu)",
        "variables": [
          "R_sigma*(mu*nu)"
        ]
      }
    },
    {
      "id": "rho",
      "type": "scalar",
      "latex": "\\rho",
      "subexpr": "\\rho",
      "chartScript": {
        "script": "rho",
        "variables": [
          "rho"
        ]
      }
    },
    {
      "id": "__add_3",
      "type": "operator",
      "op": "add",
      "subexpr": "\\partial_{\\mu} \\Gamma_{\\nu\\sigma}^{\\rho} - \\partial_{\\nu} \\Gamma_{\\mu\\sigma}^{\\rho}",
      "chartScript": {
        "script": "-pow(Gamma_mu*sigma, rho)*partial_nu + pow(Gamma_nu*sigma, rho)*partial_mu",
        "variables": [
          "Gamma_mu*sigma",
          "Gamma_nu*sigma",
          "partial_mu",
          "partial_nu",
          "rho"
        ]
      }
    },
    {
      "id": "__multiply_4",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\partial_{\\mu} \\Gamma_{\\nu\\sigma}^{\\rho}",
      "chartScript": {
        "script": "pow(Gamma_nu*sigma, rho)*partial_mu",
        "variables": [
          "Gamma_nu*sigma",
          "partial_mu",
          "rho"
        ]
      }
    },
    {
      "id": "partial_mu",
      "type": "scalar",
      "latex": "\\partial_{\\mu}",
      "subexpr": "\\partial_{\\mu}",
      "chartScript": {
        "script": "partial_mu",
        "variables": [
          "partial_mu"
        ]
      }
    },
    {
      "id": "__power_5",
      "type": "operator",
      "op": "power",
      "subexpr": "\\Gamma_{\\nu\\sigma}^{\\rho}",
      "chartScript": {
        "script": "pow(Gamma_nu*sigma, rho)",
        "variables": [
          "Gamma_nu*sigma",
          "rho"
        ]
      }
    },
    {
      "id": "Gamma_nusigma",
      "type": "scalar",
      "latex": "\\Gamma_{\\nu\\sigma}",
      "subexpr": "\\Gamma_{\\nu\\sigma}",
      "chartScript": {
        "script": "Gamma_nu*sigma",
        "variables": [
          "Gamma_nu*sigma"
        ]
      }
    },
    {
      "id": "__negation_6",
      "type": "operator",
      "op": "negation",
      "subexpr": "-\\partial_{\\nu} \\Gamma_{\\mu\\sigma}^{\\rho}",
      "chartScript": {
        "script": "-pow(Gamma_mu*sigma, rho)*partial_nu",
        "variables": [
          "Gamma_mu*sigma",
          "partial_nu",
          "rho"
        ]
      }
    },
    {
      "id": "__multiply_7",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\partial_{\\nu} \\Gamma_{\\mu\\sigma}^{\\rho}",
      "chartScript": {
        "script": "pow(Gamma_mu*sigma, rho)*partial_nu",
        "variables": [
          "Gamma_mu*sigma",
          "partial_nu",
          "rho"
        ]
      }
    },
    {
      "id": "partial_nu",
      "type": "scalar",
      "latex": "\\partial_{\\nu}",
      "subexpr": "\\partial_{\\nu}",
      "chartScript": {
        "script": "partial_nu",
        "variables": [
          "partial_nu"
        ]
      }
    },
    {
      "id": "__power_8",
      "type": "operator",
      "op": "power",
      "subexpr": "\\Gamma_{\\mu\\sigma}^{\\rho}",
      "chartScript": {
        "script": "pow(Gamma_mu*sigma, rho)",
        "variables": [
          "Gamma_mu*sigma",
          "rho"
        ]
      }
    },
    {
      "id": "Gamma_musigma",
      "type": "scalar",
      "latex": "\\Gamma_{\\mu\\sigma}",
      "subexpr": "\\Gamma_{\\mu\\sigma}",
      "chartScript": {
        "script": "Gamma_mu*sigma",
        "variables": [
          "Gamma_mu*sigma"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "R_sigmamunu",
      "to": "__power_2"
    },
    {
      "from": "rho",
      "to": "__power_2",
      "role": "exp"
    },
    {
      "from": "__power_2",
      "to": "__equals_1"
    },
    {
      "from": "partial_mu",
      "to": "__multiply_4",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "Gamma_nusigma",
      "to": "__power_5"
    },
    {
      "from": "rho",
      "to": "__power_5",
      "role": "exp"
    },
    {
      "from": "__power_5",
      "to": "__multiply_4",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_4",
      "to": "__add_3"
    },
    {
      "from": "partial_nu",
      "to": "__multiply_7",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "Gamma_musigma",
      "to": "__power_8"
    },
    {
      "from": "rho",
      "to": "__power_8",
      "role": "exp"
    },
    {
      "from": "__power_8",
      "to": "__multiply_7",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_7",
      "to": "__negation_6"
    },
    {
      "from": "__negation_6",
      "to": "__add_3"
    },
    {
      "from": "__add_3",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("$(\cdot)^{\cdot}$")):::operator
  R_sigmamunu["$R_{\sigma\mu\nu}$"]:::scalar
  rho["$\rho$"]:::scalar
  __add_3(("$+$")):::operator
  __multiply_4(("$\times$")):::operator
  partial_mu["$\partial_{\mu}$"]:::scalar
  __power_5(("$(\cdot)^{\cdot}$")):::operator
  Gamma_nusigma["$\Gamma_{\nu\sigma}$"]:::scalar
  __negation_6@{ shape: "flip-tri", label: "$-$" }
  __multiply_7(("$\times$")):::operator
  partial_nu["$\partial_{\nu}$"]:::scalar
  __power_8(("$(\cdot)^{\cdot}$")):::operator
  Gamma_musigma["$\Gamma_{\mu\sigma}$"]:::scalar
  class __negation_6 operator
  R_sigmamunu --> __power_2
  rho -->|exp| __power_2
  __power_2 --> __equals_1
  partial_mu --> __multiply_4
  Gamma_nusigma --> __power_5
  rho -->|exp| __power_5
  __power_5 --> __multiply_4
  __multiply_4 --> __add_3
  partial_nu --> __multiply_7
  Gamma_musigma --> __power_8
  rho -->|exp| __power_8
  __power_8 --> __multiply_7
  __multiply_7 --> __negation_6
  __negation_6 --> __add_3
  __add_3 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#aaa,stroke-width:2px
  linkStyle 6 stroke:#ef5350,stroke-width:3px
  linkStyle 7 stroke:#aaa,stroke-width:2px
  linkStyle 8 stroke:#ef5350,stroke-width:3px
  linkStyle 9 stroke:#aaa,stroke-width:2px
  linkStyle 10 stroke:#aaa,stroke-width:2px
  linkStyle 11 stroke:#ef5350,stroke-width:3px
  linkStyle 12 stroke:#aaa,stroke-width:2px
  linkStyle 13 stroke:#aaa,stroke-width:2px
  linkStyle 14 stroke:#aaa,stroke-width:2px
Click D3 to render
time_dilation
$$\Delta t = \gamma \Delta t_0$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  Delta_t["$\Delta t$"]:::scalar
  __multiply_2(("$\times$")):::operator
  gamma["$\gamma$"]:::scalar
  Delta_t_0["$\Delta t_0$"]:::scalar
  Delta_t --> __equals_1
  gamma --> __multiply_2
  Delta_t_0 --> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#aaa,stroke-width:2px
\Delta t = \gamma \Delta t_0
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "\\Delta t = \\gamma \\Delta t_0",
      "chartScript": {
        "script": "-Delta*gamma*t_0 + Delta*t",
        "variables": [
          "Delta",
          "gamma",
          "t",
          "t_0"
        ]
      }
    },
    {
      "id": "Delta_t",
      "type": "scalar",
      "latex": "\\Delta t",
      "subexpr": "\\Delta t",
      "chartScript": {
        "script": "Delta*t",
        "variables": [
          "Delta",
          "t"
        ]
      }
    },
    {
      "id": "__multiply_2",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\gamma \\Delta t_0",
      "chartScript": {
        "script": "Delta*gamma*t_0",
        "variables": [
          "Delta",
          "gamma",
          "t_0"
        ]
      }
    },
    {
      "id": "gamma",
      "type": "scalar",
      "latex": "\\gamma",
      "subexpr": "\\gamma",
      "chartScript": {
        "script": "gamma",
        "variables": [
          "gamma"
        ]
      }
    },
    {
      "id": "Delta_t_0",
      "type": "scalar",
      "latex": "\\Delta t_0",
      "subexpr": "\\Delta t_0",
      "chartScript": {
        "script": "Delta*t_0",
        "variables": [
          "Delta",
          "t_0"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "Delta_t",
      "to": "__equals_1"
    },
    {
      "from": "gamma",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "Delta_t_0",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_2",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  Delta_t["$\Delta t$"]:::scalar
  __multiply_2(("$\times$")):::operator
  gamma["$\gamma$"]:::scalar
  Delta_t_0["$\Delta t_0$"]:::scalar
  Delta_t --> __equals_1
  gamma --> __multiply_2
  Delta_t_0 --> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#aaa,stroke-width:2px
Click D3 to render
relativistic_momentum
$$p = \gamma m v$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  p["$p$"]:::scalar
  __multiply_2(("$\times$")):::operator
  gamma["$\gamma$"]:::scalar
  __multiply_3(("$\times$")):::operator
  m["$m$"]:::scalar
  v["$v$"]:::scalar
  p --> __equals_1
  gamma --> __multiply_2
  m --> __multiply_3
  v --> __multiply_3
  __multiply_3 --> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#ef5350,stroke-width:3px
  linkStyle 5 stroke:#aaa,stroke-width:2px
p = \gamma m v
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "p = \\gamma m v",
      "chartScript": {
        "script": "-gamma*m*v + p",
        "variables": [
          "gamma",
          "m",
          "p",
          "v"
        ]
      }
    },
    {
      "id": "p",
      "type": "scalar",
      "latex": "p",
      "subexpr": "p",
      "chartScript": {
        "script": "p",
        "variables": [
          "p"
        ]
      }
    },
    {
      "id": "__multiply_2",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\gamma m v",
      "chartScript": {
        "script": "gamma*m*v",
        "variables": [
          "gamma",
          "m",
          "v"
        ]
      }
    },
    {
      "id": "gamma",
      "type": "scalar",
      "latex": "\\gamma",
      "subexpr": "\\gamma",
      "chartScript": {
        "script": "gamma",
        "variables": [
          "gamma"
        ]
      }
    },
    {
      "id": "__multiply_3",
      "type": "operator",
      "op": "multiply",
      "subexpr": "m v",
      "chartScript": {
        "script": "m*v",
        "variables": [
          "m",
          "v"
        ]
      }
    },
    {
      "id": "m",
      "type": "scalar",
      "latex": "m",
      "subexpr": "m",
      "chartScript": {
        "script": "m",
        "variables": [
          "m"
        ]
      }
    },
    {
      "id": "v",
      "type": "scalar",
      "latex": "v",
      "subexpr": "v",
      "chartScript": {
        "script": "v",
        "variables": [
          "v"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "p",
      "to": "__equals_1"
    },
    {
      "from": "gamma",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "m",
      "to": "__multiply_3",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "v",
      "to": "__multiply_3",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_3",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_2",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  p["$p$"]:::scalar
  __multiply_2(("$\times$")):::operator
  gamma["$\gamma$"]:::scalar
  __multiply_3(("$\times$")):::operator
  m["$m$"]:::scalar
  v["$v$"]:::scalar
  p --> __equals_1
  gamma --> __multiply_2
  m --> __multiply_3
  v --> __multiply_3
  __multiply_3 --> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#ef5350,stroke-width:3px
  linkStyle 5 stroke:#aaa,stroke-width:2px
Click D3 to render
relativistic_energy
$$E = \gamma m c^2$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  E["$E$"]:::scalar
  __multiply_2(("$\times$")):::operator
  gamma["$\gamma$"]:::scalar
  __multiply_3(("$\times$")):::operator
  m["$m$"]:::scalar
  __power_4(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  E --> __equals_1
  gamma --> __multiply_2
  m --> __multiply_3
  c --> __power_4
  __power_4 --> __multiply_3
  __multiply_3 --> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#aaa,stroke-width:2px
  linkStyle 4 stroke:#ef5350,stroke-width:3px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
E = \gamma m c^2
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "E = \\gamma m c^2",
      "chartScript": {
        "script": "E - pow(c, 2)*gamma*m",
        "variables": [
          "E",
          "c",
          "gamma",
          "m"
        ]
      }
    },
    {
      "id": "E",
      "type": "scalar",
      "latex": "E",
      "subexpr": "E",
      "chartScript": {
        "script": "E",
        "variables": [
          "E"
        ]
      }
    },
    {
      "id": "__multiply_2",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\gamma m c^{2}",
      "chartScript": {
        "script": "pow(c, 2)*gamma*m",
        "variables": [
          "c",
          "gamma",
          "m"
        ]
      }
    },
    {
      "id": "gamma",
      "type": "scalar",
      "latex": "\\gamma",
      "subexpr": "\\gamma",
      "chartScript": {
        "script": "gamma",
        "variables": [
          "gamma"
        ]
      }
    },
    {
      "id": "__multiply_3",
      "type": "operator",
      "op": "multiply",
      "subexpr": "m c^{2}",
      "chartScript": {
        "script": "pow(c, 2)*m",
        "variables": [
          "c",
          "m"
        ]
      }
    },
    {
      "id": "m",
      "type": "scalar",
      "latex": "m",
      "subexpr": "m",
      "chartScript": {
        "script": "m",
        "variables": [
          "m"
        ]
      }
    },
    {
      "id": "__power_4",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "c^{2}",
      "chartScript": {
        "script": "pow(c, 2)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "c",
      "type": "scalar",
      "latex": "c",
      "subexpr": "c",
      "chartScript": {
        "script": "c",
        "variables": [
          "c"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "E",
      "to": "__equals_1"
    },
    {
      "from": "gamma",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "m",
      "to": "__multiply_3",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "c",
      "to": "__power_4"
    },
    {
      "from": "__power_4",
      "to": "__multiply_3",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_3",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_2",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  E["$E$"]:::scalar
  __multiply_2(("$\times$")):::operator
  gamma["$\gamma$"]:::scalar
  __multiply_3(("$\times$")):::operator
  m["$m$"]:::scalar
  __power_4(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  E --> __equals_1
  gamma --> __multiply_2
  m --> __multiply_3
  c --> __power_4
  __power_4 --> __multiply_3
  __multiply_3 --> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#aaa,stroke-width:2px
  linkStyle 4 stroke:#ef5350,stroke-width:3px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
Click D3 to render
schwarzschild_radius
$$r_s = \frac{2 G M}{c^2}$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  r_s["$r_{s}$"]:::scalar
  __multiply_2(("$\times$")):::operator
  __multiply_3(("$\times$")):::operator
  __num_4["$2$"]:::number
  __multiply_5(("$\times$")):::operator
  G["$G$"]:::scalar
  M["$M$"]:::scalar
  __power_6(("$\dfrac{1}{(\cdot)}$")):::operator
  __power_7(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  r_s --> __equals_1
  __num_4 --> __multiply_3
  G --> __multiply_5
  M --> __multiply_5
  __multiply_5 --> __multiply_3
  __multiply_3 --> __multiply_2
  c --> __power_7
  __power_7 --> __power_6
  __power_6 -.-> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#ef5350,stroke-width:3px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#ef5350,stroke-width:6px
  linkStyle 8 stroke:#42a5f5,stroke-width:1px
  linkStyle 9 stroke:#aaa,stroke-width:2px
r_s = \frac{2 G M}{c^2}
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "r_s = \\frac{2 G M}{c^2}",
      "chartScript": {
        "script": "-2*G*M/pow(c, 2) + r_s",
        "variables": [
          "G",
          "M",
          "c",
          "r_s"
        ]
      }
    },
    {
      "id": "r_s",
      "type": "scalar",
      "latex": "r_{s}",
      "subexpr": "r_{s}",
      "chartScript": {
        "script": "r_s",
        "variables": [
          "r_s"
        ]
      }
    },
    {
      "id": "__multiply_2",
      "type": "operator",
      "op": "multiply",
      "subexpr": "2 G M \\frac{1}{c^{2}}",
      "chartScript": {
        "script": "2*G*M/pow(c, 2)",
        "variables": [
          "G",
          "M",
          "c"
        ]
      }
    },
    {
      "id": "__multiply_3",
      "type": "operator",
      "op": "multiply",
      "subexpr": "2 G M",
      "chartScript": {
        "script": "2*G*M",
        "variables": [
          "G",
          "M"
        ]
      }
    },
    {
      "id": "__num_4",
      "type": "number",
      "label": "2",
      "subexpr": "2",
      "chartScript": {
        "script": "2",
        "variables": []
      }
    },
    {
      "id": "__multiply_5",
      "type": "operator",
      "op": "multiply",
      "subexpr": "G M",
      "chartScript": {
        "script": "G*M",
        "variables": [
          "G",
          "M"
        ]
      }
    },
    {
      "id": "G",
      "type": "scalar",
      "latex": "G",
      "subexpr": "G",
      "chartScript": {
        "script": "G",
        "variables": [
          "G"
        ]
      }
    },
    {
      "id": "M",
      "type": "scalar",
      "latex": "M",
      "subexpr": "M",
      "chartScript": {
        "script": "M",
        "variables": [
          "M"
        ]
      }
    },
    {
      "id": "__power_6",
      "type": "operator",
      "latex": "\\dfrac{1}{(\\cdot)}",
      "op": "power",
      "exponent": "-1",
      "subexpr": "\\frac{1}{c^{2}}",
      "chartScript": {
        "script": "pow(c, -2)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "__power_7",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "c^{2}",
      "chartScript": {
        "script": "pow(c, 2)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "c",
      "type": "scalar",
      "latex": "c",
      "subexpr": "c",
      "chartScript": {
        "script": "c",
        "variables": [
          "c"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "r_s",
      "to": "__equals_1"
    },
    {
      "from": "__num_4",
      "to": "__multiply_3",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "G",
      "to": "__multiply_5",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "M",
      "to": "__multiply_5",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_5",
      "to": "__multiply_3",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_3",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "c",
      "to": "__power_7"
    },
    {
      "from": "__power_7",
      "to": "__power_6"
    },
    {
      "from": "__power_6",
      "to": "__multiply_2"
    },
    {
      "from": "__multiply_2",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  r_s["$r_{s}$"]:::scalar
  __multiply_2(("$\times$")):::operator
  __multiply_3(("$\times$")):::operator
  __num_4["$2$"]:::number
  __multiply_5(("$\times$")):::operator
  G["$G$"]:::scalar
  M["$M$"]:::scalar
  __power_6(("$\dfrac{1}{(\cdot)}$")):::operator
  __power_7(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  r_s --> __equals_1
  __num_4 --> __multiply_3
  G --> __multiply_5
  M --> __multiply_5
  __multiply_5 --> __multiply_3
  __multiply_3 --> __multiply_2
  c --> __power_7
  __power_7 --> __power_6
  __power_6 -.-> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:3px
  linkStyle 2 stroke:#ef5350,stroke-width:3px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#ef5350,stroke-width:3px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#ef5350,stroke-width:6px
  linkStyle 8 stroke:#42a5f5,stroke-width:1px
  linkStyle 9 stroke:#aaa,stroke-width:2px
Click D3 to render
velocity_addition
$$u = \frac{u' + v}{1 + \frac{u' v}{c^2}}$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  u["$u$"]:::scalar
  __multiply_2(("$\times$")):::operator
  __add_3(("$+$")):::operator
  u_2["$u'$"]:::scalar
  v["$v$"]:::scalar
  __power_4(("$\dfrac{1}{(\cdot)}$")):::operator
  __add_5(("$+$")):::operator
  __num_6["$1$"]:::number
  __multiply_7(("$\times$")):::operator
  __multiply_8(("$\times$")):::operator
  __power_9(("$\dfrac{1}{(\cdot)}$")):::operator
  __power_10(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  u --> __equals_1
  u_2 --> __add_3
  v --> __add_3
  __add_3 --> __multiply_2
  __num_6 --> __add_5
  u_2 --> __multiply_8
  v --> __multiply_8
  __multiply_8 --> __multiply_7
  c --> __power_10
  __power_10 --> __power_9
  __power_9 -.-> __multiply_7
  __multiply_7 --> __add_5
  __add_5 --> __power_4
  __power_4 -.-> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#ef5350,stroke-width:3px
  linkStyle 7 stroke:#ef5350,stroke-width:3px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#ef5350,stroke-width:6px
  linkStyle 10 stroke:#42a5f5,stroke-width:1px
  linkStyle 11 stroke:#aaa,stroke-width:2px
  linkStyle 12 stroke:#aaa,stroke-width:2px
  linkStyle 13 stroke:#42a5f5,stroke-width:1px
  linkStyle 14 stroke:#aaa,stroke-width:2px
u = \frac{u' + v}{1 + \frac{u' v}{c^2}}
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "u = \\frac{u' + v}{1 + \\frac{u' v}{c^2}}",
      "chartScript": {
        "script": "u - (u_prime + v)/(1 + u_prime*v/pow(c, 2))",
        "variables": [
          "c",
          "u",
          "u_prime",
          "v"
        ]
      }
    },
    {
      "id": "u",
      "type": "scalar",
      "latex": "u",
      "subexpr": "u",
      "chartScript": {
        "script": "u",
        "variables": [
          "u"
        ]
      }
    },
    {
      "id": "__multiply_2",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\left(v + u'\\right) \\frac{1}{1 + \\frac{u' v}{c^{2}}}",
      "chartScript": {
        "script": "(u_prime + v)/(1 + u_prime*v/pow(c, 2))",
        "variables": [
          "c",
          "u_prime",
          "v"
        ]
      }
    },
    {
      "id": "__add_3",
      "type": "operator",
      "op": "add",
      "subexpr": "v + u'",
      "chartScript": {
        "script": "u_prime + v",
        "variables": [
          "u_prime",
          "v"
        ]
      }
    },
    {
      "id": "u_2",
      "type": "scalar",
      "latex": "u'",
      "subexpr": "u'",
      "chartScript": {
        "script": "u_prime",
        "variables": [
          "u_prime"
        ]
      }
    },
    {
      "id": "v",
      "type": "scalar",
      "latex": "v",
      "subexpr": "v",
      "chartScript": {
        "script": "v",
        "variables": [
          "v"
        ]
      }
    },
    {
      "id": "__power_4",
      "type": "operator",
      "latex": "\\dfrac{1}{(\\cdot)}",
      "op": "power",
      "exponent": "-1",
      "subexpr": "\\frac{1}{1 + \\frac{u' v}{c^{2}}}",
      "chartScript": {
        "script": "1/(1 + u_prime*v/pow(c, 2))",
        "variables": [
          "c",
          "u_prime",
          "v"
        ]
      }
    },
    {
      "id": "__add_5",
      "type": "operator",
      "op": "add",
      "subexpr": "1 + v u' \\frac{1}{c^{2}}",
      "chartScript": {
        "script": "1 + u_prime*v/pow(c, 2)",
        "variables": [
          "c",
          "u_prime",
          "v"
        ]
      }
    },
    {
      "id": "__num_6",
      "type": "number",
      "label": "1",
      "subexpr": "1",
      "chartScript": {
        "script": "1",
        "variables": []
      }
    },
    {
      "id": "__multiply_7",
      "type": "operator",
      "op": "multiply",
      "subexpr": "v u' \\frac{1}{c^{2}}",
      "chartScript": {
        "script": "u_prime*v/pow(c, 2)",
        "variables": [
          "c",
          "u_prime",
          "v"
        ]
      }
    },
    {
      "id": "__multiply_8",
      "type": "operator",
      "op": "multiply",
      "subexpr": "v u'",
      "chartScript": {
        "script": "u_prime*v",
        "variables": [
          "u_prime",
          "v"
        ]
      }
    },
    {
      "id": "__power_9",
      "type": "operator",
      "latex": "\\dfrac{1}{(\\cdot)}",
      "op": "power",
      "exponent": "-1",
      "subexpr": "\\frac{1}{c^{2}}",
      "chartScript": {
        "script": "pow(c, -2)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "__power_10",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "c^{2}",
      "chartScript": {
        "script": "pow(c, 2)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "c",
      "type": "scalar",
      "latex": "c",
      "subexpr": "c",
      "chartScript": {
        "script": "c",
        "variables": [
          "c"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "u",
      "to": "__equals_1"
    },
    {
      "from": "u_2",
      "to": "__add_3"
    },
    {
      "from": "v",
      "to": "__add_3"
    },
    {
      "from": "__add_3",
      "to": "__multiply_2",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__num_6",
      "to": "__add_5"
    },
    {
      "from": "u_2",
      "to": "__multiply_8",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "v",
      "to": "__multiply_8",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_8",
      "to": "__multiply_7",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "c",
      "to": "__power_10"
    },
    {
      "from": "__power_10",
      "to": "__power_9"
    },
    {
      "from": "__power_9",
      "to": "__multiply_7"
    },
    {
      "from": "__multiply_7",
      "to": "__add_5"
    },
    {
      "from": "__add_5",
      "to": "__power_4"
    },
    {
      "from": "__power_4",
      "to": "__multiply_2"
    },
    {
      "from": "__multiply_2",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  u["$u$"]:::scalar
  __multiply_2(("$\times$")):::operator
  __add_3(("$+$")):::operator
  u_2["$u'$"]:::scalar
  v["$v$"]:::scalar
  __power_4(("$\dfrac{1}{(\cdot)}$")):::operator
  __add_5(("$+$")):::operator
  __num_6["$1$"]:::number
  __multiply_7(("$\times$")):::operator
  __multiply_8(("$\times$")):::operator
  __power_9(("$\dfrac{1}{(\cdot)}$")):::operator
  __power_10(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  u --> __equals_1
  u_2 --> __add_3
  v --> __add_3
  __add_3 --> __multiply_2
  __num_6 --> __add_5
  u_2 --> __multiply_8
  v --> __multiply_8
  __multiply_8 --> __multiply_7
  c --> __power_10
  __power_10 --> __power_9
  __power_9 -.-> __multiply_7
  __multiply_7 --> __add_5
  __add_5 --> __power_4
  __power_4 -.-> __multiply_2
  __multiply_2 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#aaa,stroke-width:2px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#ef5350,stroke-width:3px
  linkStyle 7 stroke:#ef5350,stroke-width:3px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#ef5350,stroke-width:6px
  linkStyle 10 stroke:#42a5f5,stroke-width:1px
  linkStyle 11 stroke:#aaa,stroke-width:2px
  linkStyle 12 stroke:#aaa,stroke-width:2px
  linkStyle 13 stroke:#42a5f5,stroke-width:1px
  linkStyle 14 stroke:#aaa,stroke-width:2px
Click D3 to render
schwarzschild_metric
$$ds^2 = -\left(1 - \frac{r_s}{r}\right) c^2 dt^2 + \frac{dr^2}{1 - \frac{r_s}{r}} + r^2 d\Omega^2$$
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("${(\cdot)}^{2}$")):::operator
  ds["$ds$"]:::scalar
  __add_3(("$+$")):::operator
  __add_4(("$+$")):::operator
  __negation_5@{ shape: "flip-tri", label: "$-$" }
  __multiply_6(("$\times$")):::operator
  __power_7(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  __power_8(("${(\cdot)}^{2}$")):::operator
  dt["$dt$"]:::scalar
  __add_9(("$+$")):::operator
  __num_10["$1$"]:::number
  __negation_11@{ shape: "flip-tri", label: "$-$" }
  __multiply_12(("$\times$")):::operator
  r_s["$r_{s}$"]:::scalar
  __power_13(("$\dfrac{1}{(\cdot)}$")):::operator
  r["$r$"]:::scalar
  __multiply_14(("$\times$")):::operator
  __power_15(("${(\cdot)}^{2}$")):::operator
  dr["$dr$"]:::scalar
  __power_16(("$\dfrac{1}{(\cdot)}$")):::operator
  __add_17(("$+$")):::operator
  __num_18["$1$"]:::number
  __negation_19@{ shape: "flip-tri", label: "$-$" }
  __multiply_20(("$\times$")):::operator
  __power_21(("$\dfrac{1}{(\cdot)}$")):::operator
  __multiply_22(("$\times$")):::operator
  __power_23(("${(\cdot)}^{2}$")):::operator
  __power_24(("${(\cdot)}^{2}$")):::operator
  dOmega["$\mathrm{d}\Omega$"]:::scalar
  class __negation_5 operator
  class __negation_11 operator
  class __negation_19 operator
  ds --> __power_2
  __power_2 --> __equals_1
  c --> __power_7
  __power_7 --> __multiply_6
  dt --> __power_8
  __power_8 --> __multiply_6
  __num_10 --> __add_9
  r_s --> __multiply_12
  r --> __power_13
  __power_13 -.-> __multiply_12
  __multiply_12 --> __negation_11
  __negation_11 --> __add_9
  __add_9 --> __multiply_6
  __multiply_6 --> __negation_5
  __negation_5 --> __add_4
  dr --> __power_15
  __power_15 --> __multiply_14
  __num_18 --> __add_17
  r_s --> __multiply_20
  r --> __power_21
  __power_21 -.-> __multiply_20
  __multiply_20 --> __negation_19
  __negation_19 --> __add_17
  __add_17 --> __power_16
  __power_16 -.-> __multiply_14
  __multiply_14 --> __add_4
  __add_4 --> __add_3
  r --> __power_23
  __power_23 --> __multiply_22
  dOmega --> __power_24
  __power_24 --> __multiply_22
  __multiply_22 --> __add_3
  __add_3 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:6px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#ef5350,stroke-width:3px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#42a5f5,stroke-width:1px
  linkStyle 10 stroke:#aaa,stroke-width:2px
  linkStyle 11 stroke:#aaa,stroke-width:2px
  linkStyle 12 stroke:#ef5350,stroke-width:3px
  linkStyle 13 stroke:#aaa,stroke-width:2px
  linkStyle 14 stroke:#aaa,stroke-width:2px
  linkStyle 15 stroke:#aaa,stroke-width:2px
  linkStyle 16 stroke:#ef5350,stroke-width:3px
  linkStyle 17 stroke:#aaa,stroke-width:2px
  linkStyle 18 stroke:#ef5350,stroke-width:3px
  linkStyle 19 stroke:#aaa,stroke-width:2px
  linkStyle 20 stroke:#42a5f5,stroke-width:1px
  linkStyle 21 stroke:#aaa,stroke-width:2px
  linkStyle 22 stroke:#aaa,stroke-width:2px
  linkStyle 23 stroke:#aaa,stroke-width:2px
  linkStyle 24 stroke:#42a5f5,stroke-width:1px
  linkStyle 25 stroke:#aaa,stroke-width:2px
  linkStyle 26 stroke:#aaa,stroke-width:2px
  linkStyle 27 stroke:#aaa,stroke-width:2px
  linkStyle 28 stroke:#ef5350,stroke-width:3px
  linkStyle 29 stroke:#aaa,stroke-width:2px
  linkStyle 30 stroke:#ef5350,stroke-width:3px
  linkStyle 31 stroke:#aaa,stroke-width:2px
  linkStyle 32 stroke:#aaa,stroke-width:2px
ds^2 = -\left(1 - \frac{r_s}{r}\right) c^2 dt^2 + \frac{dr^2}{1 - \frac{r_s}{r}} + r^2 d\Omega^2
Semantic Graph JSON
{
  "nodes": [
    {
      "id": "__equals_1",
      "type": "relation",
      "op": "equals",
      "subexpr": "ds^2 = -\\left(1 - \\frac{r_s}{r}\\right) c^2 dt^2 + \\frac{dr^2}{1 - \\frac{r_s}{r}} + r^2 d\\Omega^2",
      "chartScript": {
        "script": "pow(c, 2)*pow(dt, 2)*(1 - r_s/r) - pow(dOmega, 2)*pow(r, 2) - pow(dr, 2)/(1 - r_s/r) + pow(ds, 2)",
        "variables": [
          "c",
          "dOmega",
          "dr",
          "ds",
          "dt",
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__power_2",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "ds^{2}",
      "chartScript": {
        "script": "pow(ds, 2)",
        "variables": [
          "ds"
        ]
      }
    },
    {
      "id": "ds",
      "type": "scalar",
      "latex": "ds",
      "subexpr": "ds",
      "chartScript": {
        "script": "ds",
        "variables": [
          "ds"
        ]
      }
    },
    {
      "id": "__add_3",
      "type": "operator",
      "op": "add",
      "subexpr": "r^{2} \\mathrm{d}\\Omega^{2} + dr^{2} \\frac{1}{1 - \\frac{r_{s}}{r}} - c^{2} dt^{2} \\left(1 - \\frac{1}{r} r_{s}\\right)",
      "chartScript": {
        "script": "pow(Omega, 2)*d*mathrm*pow(r, 2) - pow(c, 2)*pow(dt, 2)*(1 - r_s/r) + pow(dr, 2)/(1 - r_s/r)",
        "variables": [
          "Omega",
          "c",
          "d",
          "dr",
          "dt",
          "mathrm",
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__add_4",
      "type": "operator",
      "op": "add",
      "subexpr": "dr^{2} \\frac{1}{1 - \\frac{r_{s}}{r}} - c^{2} dt^{2} \\left(1 - \\frac{1}{r} r_{s}\\right)",
      "chartScript": {
        "script": "-pow(c, 2)*pow(dt, 2)*(1 - r_s/r) + pow(dr, 2)/(1 - r_s/r)",
        "variables": [
          "c",
          "dr",
          "dt",
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__negation_5",
      "type": "operator",
      "op": "negation",
      "subexpr": "-c^{2} dt^{2} \\left(1 - \\frac{1}{r} r_{s}\\right)",
      "chartScript": {
        "script": "-pow(c, 2)*pow(dt, 2)*(1 - r_s/r)",
        "variables": [
          "c",
          "dt",
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__multiply_6",
      "type": "operator",
      "op": "multiply",
      "subexpr": "c^{2} dt^{2} \\left(1 - \\frac{1}{r} r_{s}\\right)",
      "chartScript": {
        "script": "pow(c, 2)*pow(dt, 2)*(1 - r_s/r)",
        "variables": [
          "c",
          "dt",
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__power_7",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "c^{2}",
      "chartScript": {
        "script": "pow(c, 2)",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "c",
      "type": "scalar",
      "latex": "c",
      "subexpr": "c",
      "chartScript": {
        "script": "c",
        "variables": [
          "c"
        ]
      }
    },
    {
      "id": "__power_8",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "dt^{2}",
      "chartScript": {
        "script": "pow(dt, 2)",
        "variables": [
          "dt"
        ]
      }
    },
    {
      "id": "dt",
      "type": "scalar",
      "latex": "dt",
      "subexpr": "dt",
      "chartScript": {
        "script": "dt",
        "variables": [
          "dt"
        ]
      }
    },
    {
      "id": "__add_9",
      "type": "operator",
      "op": "add",
      "subexpr": "1 - \\frac{1}{r} r_{s}",
      "chartScript": {
        "script": "1 - r_s/r",
        "variables": [
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__num_10",
      "type": "number",
      "label": "1",
      "subexpr": "1",
      "chartScript": {
        "script": "1",
        "variables": []
      }
    },
    {
      "id": "__negation_11",
      "type": "operator",
      "op": "negation",
      "subexpr": "-\\frac{1}{r} r_{s}",
      "chartScript": {
        "script": "-r_s/r",
        "variables": [
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__multiply_12",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\frac{1}{r} r_{s}",
      "chartScript": {
        "script": "r_s/r",
        "variables": [
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "r_s",
      "type": "scalar",
      "latex": "r_{s}",
      "subexpr": "r_{s}",
      "chartScript": {
        "script": "r_s",
        "variables": [
          "r_s"
        ]
      }
    },
    {
      "id": "__power_13",
      "type": "operator",
      "latex": "\\dfrac{1}{(\\cdot)}",
      "op": "power",
      "exponent": "-1",
      "subexpr": "\\frac{1}{r}",
      "chartScript": {
        "script": "1/r",
        "variables": [
          "r"
        ]
      }
    },
    {
      "id": "r",
      "type": "scalar",
      "latex": "r",
      "subexpr": "r",
      "chartScript": {
        "script": "r",
        "variables": [
          "r"
        ]
      }
    },
    {
      "id": "__multiply_14",
      "type": "operator",
      "op": "multiply",
      "subexpr": "dr^{2} \\frac{1}{1 - \\frac{r_{s}}{r}}",
      "chartScript": {
        "script": "pow(dr, 2)/(1 - r_s/r)",
        "variables": [
          "dr",
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__power_15",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "dr^{2}",
      "chartScript": {
        "script": "pow(dr, 2)",
        "variables": [
          "dr"
        ]
      }
    },
    {
      "id": "dr",
      "type": "scalar",
      "latex": "dr",
      "subexpr": "dr",
      "chartScript": {
        "script": "dr",
        "variables": [
          "dr"
        ]
      }
    },
    {
      "id": "__power_16",
      "type": "operator",
      "latex": "\\dfrac{1}{(\\cdot)}",
      "op": "power",
      "exponent": "-1",
      "subexpr": "\\frac{1}{1 - \\frac{r_{s}}{r}}",
      "chartScript": {
        "script": "1/(1 - r_s/r)",
        "variables": [
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__add_17",
      "type": "operator",
      "op": "add",
      "subexpr": "1 - \\frac{1}{r} r_{s}",
      "chartScript": {
        "script": "1 - r_s/r",
        "variables": [
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__num_18",
      "type": "number",
      "label": "1",
      "subexpr": "1",
      "chartScript": {
        "script": "1",
        "variables": []
      }
    },
    {
      "id": "__negation_19",
      "type": "operator",
      "op": "negation",
      "subexpr": "-\\frac{1}{r} r_{s}",
      "chartScript": {
        "script": "-r_s/r",
        "variables": [
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__multiply_20",
      "type": "operator",
      "op": "multiply",
      "subexpr": "\\frac{1}{r} r_{s}",
      "chartScript": {
        "script": "r_s/r",
        "variables": [
          "r",
          "r_s"
        ]
      }
    },
    {
      "id": "__power_21",
      "type": "operator",
      "latex": "\\dfrac{1}{(\\cdot)}",
      "op": "power",
      "exponent": "-1",
      "subexpr": "\\frac{1}{r}",
      "chartScript": {
        "script": "1/r",
        "variables": [
          "r"
        ]
      }
    },
    {
      "id": "__multiply_22",
      "type": "operator",
      "op": "multiply",
      "subexpr": "r^{2} \\mathrm{d}\\Omega^{2}",
      "chartScript": {
        "script": "pow(Omega, 2)*d*mathrm*pow(r, 2)",
        "variables": [
          "Omega",
          "d",
          "mathrm",
          "r"
        ]
      }
    },
    {
      "id": "__power_23",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "r^{2}",
      "chartScript": {
        "script": "pow(r, 2)",
        "variables": [
          "r"
        ]
      }
    },
    {
      "id": "__power_24",
      "type": "operator",
      "op": "power",
      "exponent": "2",
      "subexpr": "\\mathrm{d}\\Omega^{2}",
      "chartScript": {
        "script": "pow(Omega, 2)*d*mathrm",
        "variables": [
          "Omega",
          "d",
          "mathrm"
        ]
      }
    },
    {
      "id": "dOmega",
      "type": "scalar",
      "latex": "\\mathrm{d}\\Omega",
      "subexpr": "\\mathrm{d}\\Omega",
      "chartScript": {
        "script": "Omega*d*mathrm",
        "variables": [
          "Omega",
          "d",
          "mathrm"
        ]
      }
    }
  ],
  "edges": [
    {
      "from": "ds",
      "to": "__power_2"
    },
    {
      "from": "__power_2",
      "to": "__equals_1"
    },
    {
      "from": "c",
      "to": "__power_7"
    },
    {
      "from": "__power_7",
      "to": "__multiply_6",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "dt",
      "to": "__power_8"
    },
    {
      "from": "__power_8",
      "to": "__multiply_6",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__num_10",
      "to": "__add_9"
    },
    {
      "from": "r_s",
      "to": "__multiply_12",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "r",
      "to": "__power_13"
    },
    {
      "from": "__power_13",
      "to": "__multiply_12"
    },
    {
      "from": "__multiply_12",
      "to": "__negation_11"
    },
    {
      "from": "__negation_11",
      "to": "__add_9"
    },
    {
      "from": "__add_9",
      "to": "__multiply_6",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_6",
      "to": "__negation_5"
    },
    {
      "from": "__negation_5",
      "to": "__add_4"
    },
    {
      "from": "dr",
      "to": "__power_15"
    },
    {
      "from": "__power_15",
      "to": "__multiply_14",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__num_18",
      "to": "__add_17"
    },
    {
      "from": "r_s",
      "to": "__multiply_20",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "r",
      "to": "__power_21"
    },
    {
      "from": "__power_21",
      "to": "__multiply_20"
    },
    {
      "from": "__multiply_20",
      "to": "__negation_19"
    },
    {
      "from": "__negation_19",
      "to": "__add_17"
    },
    {
      "from": "__add_17",
      "to": "__power_16"
    },
    {
      "from": "__power_16",
      "to": "__multiply_14"
    },
    {
      "from": "__multiply_14",
      "to": "__add_4"
    },
    {
      "from": "__add_4",
      "to": "__add_3"
    },
    {
      "from": "r",
      "to": "__power_23"
    },
    {
      "from": "__power_23",
      "to": "__multiply_22",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "dOmega",
      "to": "__power_24"
    },
    {
      "from": "__power_24",
      "to": "__multiply_22",
      "semantic": "direct",
      "weight": 1.0
    },
    {
      "from": "__multiply_22",
      "to": "__add_3"
    },
    {
      "from": "__add_3",
      "to": "__equals_1"
    }
  ],
  "classification": {
    "kind": "algebraic"
  },
  "domain": "mechanics"
}
Mermaid Script
flowchart RL
  classDef scalar fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef vector fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef constant fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef number fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef expression fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef text fill:#1b3a1e,stroke:#66bb6a,color:#c8e6c9,font-size:15px
  classDef operator fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef function fill:#1a2740,stroke:#42a5f5,color:#bbdefb,font-size:15px
  classDef relation fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef result fill:#332a0b,stroke:#ffa726,color:#ffe0b2,font-size:15px
  classDef annotation fill:#131a2c,stroke:#4a5580,color:#b0bcd0,font-size:15px
  __equals_1{"="}:::relation
  __power_2(("${(\cdot)}^{2}$")):::operator
  ds["$ds$"]:::scalar
  __add_3(("$+$")):::operator
  __add_4(("$+$")):::operator
  __negation_5@{ shape: "flip-tri", label: "$-$" }
  __multiply_6(("$\times$")):::operator
  __power_7(("${(\cdot)}^{2}$")):::operator
  c["$c$"]:::scalar
  __power_8(("${(\cdot)}^{2}$")):::operator
  dt["$dt$"]:::scalar
  __add_9(("$+$")):::operator
  __num_10["$1$"]:::number
  __negation_11@{ shape: "flip-tri", label: "$-$" }
  __multiply_12(("$\times$")):::operator
  r_s["$r_{s}$"]:::scalar
  __power_13(("$\dfrac{1}{(\cdot)}$")):::operator
  r["$r$"]:::scalar
  __multiply_14(("$\times$")):::operator
  __power_15(("${(\cdot)}^{2}$")):::operator
  dr["$dr$"]:::scalar
  __power_16(("$\dfrac{1}{(\cdot)}$")):::operator
  __add_17(("$+$")):::operator
  __num_18["$1$"]:::number
  __negation_19@{ shape: "flip-tri", label: "$-$" }
  __multiply_20(("$\times$")):::operator
  __power_21(("$\dfrac{1}{(\cdot)}$")):::operator
  __multiply_22(("$\times$")):::operator
  __power_23(("${(\cdot)}^{2}$")):::operator
  __power_24(("${(\cdot)}^{2}$")):::operator
  dOmega["$\mathrm{d}\Omega$"]:::scalar
  class __negation_5 operator
  class __negation_11 operator
  class __negation_19 operator
  ds --> __power_2
  __power_2 --> __equals_1
  c --> __power_7
  __power_7 --> __multiply_6
  dt --> __power_8
  __power_8 --> __multiply_6
  __num_10 --> __add_9
  r_s --> __multiply_12
  r --> __power_13
  __power_13 -.-> __multiply_12
  __multiply_12 --> __negation_11
  __negation_11 --> __add_9
  __add_9 --> __multiply_6
  __multiply_6 --> __negation_5
  __negation_5 --> __add_4
  dr --> __power_15
  __power_15 --> __multiply_14
  __num_18 --> __add_17
  r_s --> __multiply_20
  r --> __power_21
  __power_21 -.-> __multiply_20
  __multiply_20 --> __negation_19
  __negation_19 --> __add_17
  __add_17 --> __power_16
  __power_16 -.-> __multiply_14
  __multiply_14 --> __add_4
  __add_4 --> __add_3
  r --> __power_23
  __power_23 --> __multiply_22
  dOmega --> __power_24
  __power_24 --> __multiply_22
  __multiply_22 --> __add_3
  __add_3 --> __equals_1
  linkStyle 0 stroke:#aaa,stroke-width:2px
  linkStyle 1 stroke:#ef5350,stroke-width:6px
  linkStyle 2 stroke:#aaa,stroke-width:2px
  linkStyle 3 stroke:#ef5350,stroke-width:3px
  linkStyle 4 stroke:#aaa,stroke-width:2px
  linkStyle 5 stroke:#ef5350,stroke-width:3px
  linkStyle 6 stroke:#aaa,stroke-width:2px
  linkStyle 7 stroke:#ef5350,stroke-width:3px
  linkStyle 8 stroke:#aaa,stroke-width:2px
  linkStyle 9 stroke:#42a5f5,stroke-width:1px
  linkStyle 10 stroke:#aaa,stroke-width:2px
  linkStyle 11 stroke:#aaa,stroke-width:2px
  linkStyle 12 stroke:#ef5350,stroke-width:3px
  linkStyle 13 stroke:#aaa,stroke-width:2px
  linkStyle 14 stroke:#aaa,stroke-width:2px
  linkStyle 15 stroke:#aaa,stroke-width:2px
  linkStyle 16 stroke:#ef5350,stroke-width:3px
  linkStyle 17 stroke:#aaa,stroke-width:2px
  linkStyle 18 stroke:#ef5350,stroke-width:3px
  linkStyle 19 stroke:#aaa,stroke-width:2px
  linkStyle 20 stroke:#42a5f5,stroke-width:1px
  linkStyle 21 stroke:#aaa,stroke-width:2px
  linkStyle 22 stroke:#aaa,stroke-width:2px
  linkStyle 23 stroke:#aaa,stroke-width:2px
  linkStyle 24 stroke:#42a5f5,stroke-width:1px
  linkStyle 25 stroke:#aaa,stroke-width:2px
  linkStyle 26 stroke:#aaa,stroke-width:2px
  linkStyle 27 stroke:#aaa,stroke-width:2px
  linkStyle 28 stroke:#ef5350,stroke-width:3px
  linkStyle 29 stroke:#aaa,stroke-width:2px
  linkStyle 30 stroke:#ef5350,stroke-width:3px
  linkStyle 31 stroke:#aaa,stroke-width:2px
  linkStyle 32 stroke:#aaa,stroke-width:2px
Click D3 to render
18 rendered, 0 errors out of 18 expressions