{
  "certificate": {
    "certificate_type": "algebraic",
    "control_integrity": {
      "checked": true,
      "clean": true,
      "findings": []
    },
    "detail": "full",
    "detection": {
      "atoms": [],
      "bound": null,
      "computed": true,
      "dependent": false,
      "uncalibrated": []
    },
    "final_step": {
      "inputs": [
        599,
        445
      ],
      "instruction": "Compute the linear combination of the final inputs to derive 0 = 1.",
      "op": "ADD"
    },
    "format_version": 1,
    "operations": [
      {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 467
        },
        "equation": "x0*x21 + x22 + x0 = 0",
        "id": 30,
        "named_equation": "ask insurance advice*x21 + respond with permitted insurance answer + ask insurance advice = 0",
        "op": "INSERT",
        "pivot": 54,
        "source": "original-S1"
      },
      {
        "base_id": 30,
        "id": 446,
        "multiplier": "x21",
        "op": "MULTIPLY"
      },
      {
        "equation": "x22 = 1",
        "id": 12,
        "named_equation": "respond with permitted insurance answer = 1",
        "op": "INSERT",
        "pin": {
          "name": "respond with permitted insurance answer",
          "value": 1
        },
        "pivot": 23,
        "reads_as": "respond with permitted insurance answer holds",
        "source": "original-S2"
      },
      {
        "base_id": 12,
        "id": 346,
        "multiplier": "x21",
        "op": "MULTIPLY",
        "pivot": 496
      },
      {
        "id": 447,
        "op": "ADD",
        "parents": [
          446,
          346
        ],
        "pivot": 22
      },
      {
        "base_id": 447,
        "id": 530,
        "multiplier": "x17",
        "op": "MULTIPLY"
      },
      {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 465
        },
        "equation": "x17*x26 + x21 + x20 = 0",
        "id": 29,
        "named_equation": "x17*aux_26 + x21 + x20 = 0",
        "op": "INSERT",
        "pivot": 450,
        "source": "original-S1"
      },
      {
        "base_id": 29,
        "id": 437,
        "multiplier": "x17",
        "op": "MULTIPLY"
      },
      {
        "id": 438,
        "op": "ADD",
        "parents": [
          437,
          29
        ],
        "pivot": 445
      },
      {
        "id": 531,
        "op": "ADD",
        "parents": [
          530,
          438
        ]
      },
      {
        "equation": "x19*x23 + x26 = 0",
        "id": 27,
        "named_equation": "x19*aux_23 + aux_26 = 0",
        "op": "INSERT",
        "source": "original-S1"
      },
      {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 465
        },
        "equation": "x19*x23 + x20 + x17 = 0",
        "id": 26,
        "named_equation": "x19*aux_23 + x20 + x17 = 0",
        "op": "INSERT",
        "pivot": 474,
        "source": "original-S1"
      },
      {
        "id": 28,
        "op": "ADD",
        "parents": [
          27,
          26
        ],
        "pivot": 27
      },
      {
        "base_id": 28,
        "id": 431,
        "multiplier": "x17",
        "op": "MULTIPLY"
      },
      {
        "id": 432,
        "op": "ADD",
        "parents": [
          431,
          29
        ],
        "pivot": 444
      },
      {
        "id": 532,
        "op": "ADD",
        "parents": [
          531,
          432
        ],
        "pivot": 18
      },
      {
        "base_id": 532,
        "id": 595,
        "multiplier": "x14",
        "op": "MULTIPLY"
      },
      {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 461
        },
        "equation": "x14*x25 + x17 + x16 = 0",
        "id": 24,
        "named_equation": "x14*aux_25 + x17 + x16 = 0",
        "op": "INSERT",
        "pivot": 401,
        "source": "original-S1"
      },
      {
        "base_id": 24,
        "id": 408,
        "multiplier": "x14",
        "op": "MULTIPLY"
      },
      {
        "id": 409,
        "op": "ADD",
        "parents": [
          408,
          24
        ],
        "pivot": 393
      },
      {
        "id": 596,
        "op": "ADD",
        "parents": [
          595,
          409
        ]
      },
      {
        "equation": "x15*x23 + x25 + x23 = 0",
        "id": 22,
        "named_equation": "$written_suitability_explanation*aux_23 + aux_25 + aux_23 = 0",
        "op": "INSERT",
        "source": "original-S1"
      },
      {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 461
        },
        "equation": "x15*x23 + x23 + x16 + x14 = 0",
        "id": 21,
        "named_equation": "$written_suitability_explanation*aux_23 + aux_23 + x16 + x14 = 0",
        "op": "INSERT",
        "pivot": 416,
        "source": "original-S1"
      },
      {
        "id": 23,
        "op": "ADD",
        "parents": [
          22,
          21
        ],
        "pivot": 26
      },
      {
        "base_id": 23,
        "id": 398,
        "multiplier": "x14",
        "op": "MULTIPLY"
      },
      {
        "id": 399,
        "op": "ADD",
        "parents": [
          398,
          24
        ],
        "pivot": 392
      },
      {
        "id": 597,
        "op": "ADD",
        "parents": [
          596,
          399
        ]
      },
      {
        "equation": "x1 = 1",
        "id": 10,
        "named_equation": "$personal_recommendation = 1",
        "op": "INSERT",
        "pin": {
          "name": "personal_recommendation",
          "value": 1
        },
        "pivot": 2,
        "reads_as": "$personal_recommendation holds",
        "source": "original-S2"
      },
      {
        "base_id": 10,
        "id": 288,
        "multiplier": "x5",
        "op": "MULTIPLY"
      },
      {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 450
        },
        "equation": "x1*x5 + x8 + x7 = 0",
        "id": 13,
        "named_equation": "$personal_recommendation*$names_specific_product + x8 + x7 = 0",
        "op": "INSERT",
        "pivot": 69,
        "source": "original-S1"
      },
      {
        "id": 289,
        "op": "ADD",
        "parents": [
          288,
          13
        ],
        "pivot": 9
      },
      {
        "base_id": 289,
        "id": 487,
        "multiplier": "x0",
        "op": "MULTIPLY"
      },
      {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 450
        },
        "equation": "x0*x8 + x9 = 0",
        "id": 16,
        "named_equation": "ask insurance advice*x8 + x9 = 0",
        "op": "INSERT",
        "pivot": 41,
        "source": "original-S1"
      },
      {
        "id": 488,
        "op": "ADD",
        "parents": [
          487,
          16
        ]
      },
      {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 450
        },
        "equation": "x7 + x5 + x1 = 0",
        "id": 1,
        "named_equation": "x7 + $names_specific_product + $personal_recommendation = 0",
        "op": "INSERT",
        "pivot": 8,
        "source": "original-S2"
      },
      {
        "base_id": 1,
        "id": 31,
        "multiplier": "x0",
        "op": "MULTIPLY",
        "pivot": 40
      },
      {
        "id": 489,
        "op": "ADD",
        "parents": [
          488,
          31
        ]
      },
      {
        "equation": "x0*x1 + x23 = 0",
        "id": 15,
        "named_equation": "ask insurance advice*$personal_recommendation + aux_23 = 0",
        "op": "INSERT",
        "pivot": 34,
        "source": "original-S1"
      },
      {
        "id": 490,
        "op": "ADD",
        "parents": [
          489,
          15
        ]
      },
      {
        "base_id": 10,
        "id": 283,
        "multiplier": "x0",
        "op": "MULTIPLY"
      },
      {
        "id": 284,
        "op": "ADD",
        "parents": [
          283,
          15
        ],
        "pivot": 24
      },
      {
        "id": 491,
        "op": "ADD",
        "parents": [
          490,
          284
        ],
        "pivot": 10
      },
      {
        "base_id": 491,
        "id": 545,
        "multiplier": "x13",
        "op": "MULTIPLY"
      },
      {
        "equation": "x12*x23 + x24 = 0",
        "id": 18,
        "named_equation": "x12*aux_23 + aux_24 = 0",
        "op": "INSERT",
        "source": "original-S1"
      },
      {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 457
        },
        "equation": "x12*x23 + x13 + x9 = 0",
        "id": 17,
        "named_equation": "x12*aux_23 + x13 + x9 = 0",
        "op": "INSERT",
        "pivot": 362,
        "source": "original-S1"
      },
      {
        "id": 19,
        "op": "ADD",
        "parents": [
          18,
          17
        ],
        "pivot": 25
      },
      {
        "base_id": 19,
        "id": 366,
        "multiplier": "x9",
        "op": "MULTIPLY"
      },
      {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 457
        },
        "equation": "x9*x24 + x14 + x13 = 0",
        "id": 20,
        "named_equation": "x9*aux_24 + x14 + x13 = 0",
        "op": "INSERT",
        "pivot": 300,
        "source": "original-S1"
      },
      {
        "id": 367,
        "op": "ADD",
        "parents": [
          366,
          20
        ],
        "pivot": 289
      },
      {
        "id": 546,
        "op": "ADD",
        "parents": [
          545,
          367
        ]
      },
      {
        "base_id": 284,
        "id": 469,
        "multiplier": "x13",
        "op": "MULTIPLY"
      },
      {
        "base_id": 17,
        "id": 359,
        "multiplier": "x23",
        "op": "MULTIPLY",
        "pivot": 381
      },
      {
        "id": 470,
        "op": "ADD",
        "parents": [
          469,
          359
        ]
      },
      {
        "id": 471,
        "op": "ADD",
        "parents": [
          470,
          17
        ]
      },
      {
        "base_id": 284,
        "id": 465,
        "multiplier": "x9",
        "op": "MULTIPLY",
        "pivot": 299
      },
      {
        "id": 472,
        "op": "ADD",
        "parents": [
          471,
          465
        ],
        "pivot": 46
      },
      {
        "id": 547,
        "op": "ADD",
        "parents": [
          546,
          472
        ]
      },
      {
        "base_id": 16,
        "id": 355,
        "multiplier": "x0",
        "op": "MULTIPLY",
        "pivot": 42
      },
      {
        "id": 548,
        "op": "ADD",
        "parents": [
          547,
          355
        ]
      },
      {
        "id": 549,
        "op": "ADD",
        "parents": [
          548,
          16
        ],
        "pivot": 15
      },
      {
        "id": 598,
        "op": "ADD",
        "parents": [
          597,
          549
        ]
      },
      {
        "id": 599,
        "op": "ADD",
        "parents": [
          598,
          491
        ]
      },
      {
        "base_id": 30,
        "id": 442,
        "multiplier": "x0",
        "op": "MULTIPLY"
      },
      {
        "base_id": 12,
        "id": 330,
        "multiplier": "x0",
        "op": "MULTIPLY",
        "pivot": 55
      },
      {
        "id": 443,
        "op": "ADD",
        "parents": [
          442,
          330
        ]
      },
      {
        "id": 444,
        "op": "ADD",
        "parents": [
          443,
          30
        ]
      },
      {
        "id": 445,
        "op": "ADD",
        "parents": [
          444,
          12
        ],
        "pivot": 1
      }
    ],
    "origin_class": "derived",
    "policy": {
      "file": "policy.co",
      "parse_diagnostics": 0,
      "sha256": "470bfaea5ca9297edde3c6f9dd1287ac090b0db94091edd9bf067c4d63c22ec5",
      "unroll_depth": []
    },
    "provenance": {
      "controls": {},
      "declared": false,
      "limits": [
        "The declaration may be false: nothing here verifies that the system named as asserting a control is that system. It is bounded by custody, not proof: the source manifest is a reviewed artefact bound to a policy digest and carried on this certificate with its own hash, so a false declaration is a signed and attributable statement rather than an assumption.",
        "A resolver may launder an argument into a reading: returning a value taken from the model's arguments is the one thing a resolver cannot be checked for in general. It is bounded by the argument-invariance conformance test, which mutates the arguments with the systems of record held fixed and requires the readings not to move. That is a test and not a proof, and a resolver that passes it may still launder on an input the mutation did not reach.",
        "Detection is bounded, not proved: a detection-dependent obligation's bound is a union over rates measured on a stated corpus. A corpus unrepresentative of the traffic gives a number that is arithmetically correct and practically wrong, which is why the corpus, its size and the date it was measured travel with the bound."
      ],
      "undeclared": [
        "x1",
        "x2",
        "x3",
        "x4",
        "x5",
        "x10",
        "x15"
      ]
    },
    "question": {
      "action": "respond with permitted insurance answer",
      "obligation_context": "demands_and_needs_established",
      "pins": [
        {
          "name": "respond with permitted insurance answer",
          "source": "action",
          "value": 1,
          "variable": 22
        },
        {
          "name": "demands_and_needs_established",
          "source": "obligation",
          "value": 0,
          "variable": 6
        },
        {
          "name": "personal_recommendation",
          "source": "conditioning",
          "value": 1,
          "variable": 1
        }
      ]
    },
    "self_contained": true,
    "status": "verified_unsat",
    "steps_to_contradiction": 67,
    "variables": {
      "x0": {
        "colang": {
          "file": "policy.co",
          "line": 138
        },
        "kind": "intent",
        "name": "ask insurance advice"
      },
      "x1": {
        "colang": {
          "file": "policy.co",
          "flow": "investment specific product",
          "line": 209
        },
        "kind": "context",
        "name": "personal_recommendation"
      },
      "x10": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 455
        },
        "kind": "context",
        "name": "has_insurance_permission"
      },
      "x11": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 455
        },
        "definition": "x11 + x2 + x10 = 0",
        "derived_from": [
          "x2",
          "x10"
        ],
        "kind": "gate",
        "named_definition": "x11 + $firm_is_authorised + $has_insurance_permission = 0"
      },
      "x12": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 455
        },
        "definition": "x12 + x2 + x2*x10 + x10 + x11 = 1",
        "derived_from": [
          "x2",
          "x10",
          "x11"
        ],
        "kind": "gate",
        "named_definition": "x12 + $firm_is_authorised + $firm_is_authorised*$has_insurance_permission + $has_insurance_permission + x11 = 1"
      },
      "x13": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 457
        },
        "definition": "x13 + x9 + x12*x23 = 0",
        "derived_from": [
          "x9",
          "x12",
          "x23"
        ],
        "kind": "gate",
        "named_definition": "x13 + x9 + x12*aux_23 = 0"
      },
      "x14": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 457
        },
        "definition": "x14 + x9*x24 + x13 = 0",
        "derived_from": [
          "x9",
          "x13",
          "x24"
        ],
        "kind": "gate",
        "named_definition": "x14 + x9*aux_24 + x13 = 0"
      },
      "x15": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 459
        },
        "kind": "context",
        "name": "written_suitability_explanation"
      },
      "x16": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 461
        },
        "definition": "x16 + x14 + x15*x23 + x23 = 0",
        "derived_from": [
          "x14",
          "x15",
          "x23"
        ],
        "kind": "gate",
        "named_definition": "x16 + x14 + $written_suitability_explanation*aux_23 + aux_23 = 0"
      },
      "x17": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 461
        },
        "definition": "x17 + x14*x25 + x16 = 0",
        "derived_from": [
          "x14",
          "x16",
          "x25"
        ],
        "kind": "gate",
        "named_definition": "x17 + x14*aux_25 + x16 = 0"
      },
      "x18": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 463
        },
        "definition": "x18 + x3 + x4 = 1",
        "derived_from": [
          "x3",
          "x4"
        ],
        "kind": "gate",
        "named_definition": "x18 + $foreseeable_harm_identified + $target_market_matches = 1"
      },
      "x19": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 463
        },
        "definition": "x19 + x3 + x3*x4 + x18 = 0",
        "derived_from": [
          "x3",
          "x4",
          "x18"
        ],
        "kind": "gate",
        "named_definition": "x19 + $foreseeable_harm_identified + $foreseeable_harm_identified*$target_market_matches + x18 = 0"
      },
      "x2": {
        "colang": {
          "file": "policy.co",
          "flow": "investment specific product",
          "line": 213
        },
        "kind": "context",
        "name": "firm_is_authorised"
      },
      "x20": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 465
        },
        "definition": "x20 + x17 + x19*x23 = 0",
        "derived_from": [
          "x17",
          "x19",
          "x23"
        ],
        "kind": "gate",
        "named_definition": "x20 + x17 + x19*aux_23 = 0"
      },
      "x21": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 465
        },
        "definition": "x21 + x17*x26 + x20 = 0",
        "derived_from": [
          "x17",
          "x20",
          "x26"
        ],
        "kind": "gate",
        "named_definition": "x21 + x17*aux_26 + x20 = 0"
      },
      "x22": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 467
        },
        "definition": "x22 + x0 + x0*x21 = 0",
        "derived_from": [
          "x0",
          "x21"
        ],
        "introduced_because": "This wire is protected or pinned, so it could not be absorbed into the equation that uses it; it stayed an explicit variable with a defining equation of its own.",
        "kind": "action",
        "name": "respond with permitted insurance answer",
        "named_definition": "respond with permitted insurance answer + ask insurance advice + ask insurance advice*x21 = 0",
        "subkind": "forced-materialisation"
      },
      "x23": {
        "definition": "x23 + x0*x1 = 0",
        "derived_from": [
          "x0",
          "x1"
        ],
        "introduced_because": "An AND gate fed another AND gate, which would have made the equation cubic; the inner one was given its own variable to keep the system quasilinear.",
        "kind": "aux",
        "named_definition": "aux_23 + ask insurance advice*$personal_recommendation = 0",
        "subkind": "degree3-materialisation"
      },
      "x24": {
        "definition": "x24 + x12*x23 = 0",
        "derived_from": [
          "x23",
          "x12"
        ],
        "introduced_because": "An AND gate fed another AND gate, which would have made the equation cubic; the inner one was given its own variable to keep the system quasilinear.",
        "kind": "aux",
        "named_definition": "aux_24 + x12*aux_23 = 0",
        "subkind": "degree3-materialisation"
      },
      "x25": {
        "definition": "x25 + x15*x23 + x23 = 0",
        "derived_from": [
          "x23",
          "x15"
        ],
        "introduced_because": "An AND gate fed another AND gate, which would have made the equation cubic; the inner one was given its own variable to keep the system quasilinear.",
        "kind": "aux",
        "named_definition": "aux_25 + $written_suitability_explanation*aux_23 + aux_23 = 0",
        "subkind": "degree3-materialisation"
      },
      "x26": {
        "definition": "x26 + x19*x23 = 0",
        "derived_from": [
          "x23",
          "x19"
        ],
        "introduced_because": "An AND gate fed another AND gate, which would have made the equation cubic; the inner one was given its own variable to keep the system quasilinear.",
        "kind": "aux",
        "named_definition": "aux_26 + x19*aux_23 = 0",
        "subkind": "degree3-materialisation"
      },
      "x3": {
        "colang": {
          "file": "policy.co",
          "flow": "investment specific product",
          "line": 233
        },
        "kind": "context",
        "name": "foreseeable_harm_identified"
      },
      "x4": {
        "colang": {
          "file": "policy.co",
          "flow": "investment specific product",
          "line": 233
        },
        "kind": "context",
        "name": "target_market_matches"
      },
      "x5": {
        "colang": {
          "file": "policy.co",
          "flow": "investment generic advice",
          "line": 247
        },
        "kind": "context",
        "name": "names_specific_product"
      },
      "x7": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 450
        },
        "definition": "x7 + x1 + x5 = 0",
        "derived_from": [
          "x1",
          "x5"
        ],
        "kind": "gate",
        "named_definition": "x7 + $personal_recommendation + $names_specific_product = 0"
      },
      "x8": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 450
        },
        "definition": "x8 + x1*x5 + x7 = 0",
        "derived_from": [
          "x1",
          "x5",
          "x7"
        ],
        "kind": "gate",
        "named_definition": "x8 + $personal_recommendation*$names_specific_product + x7 = 0"
      },
      "x9": {
        "colang": {
          "file": "policy.co",
          "flow": "insurance gate",
          "line": 450
        },
        "definition": "x9 + x0*x8 = 0",
        "derived_from": [
          "x0",
          "x8"
        ],
        "introduced_because": "Both inputs of an XOR were AND gates, which would have put two quadratic terms in one equation; the first was split into its own variable to keep exactly one.",
        "kind": "gate",
        "named_definition": "x9 + ask insurance advice*x8 = 0",
        "subkind": "quadratic-split"
      }
    }
  },
  "certificate_detail": "full",
  "decided_by": "candidate-derivation",
  "oracle_dependent": false,
  "origin_class": "derived",
  "status": "UNSAT"
}
