{
  "format_version": 1,
  "certificate_type": "algebraic",
  "status": "verified_unsat",
  "detail": "full",
  "origin_class": "derived",
  "self_contained": true,
  "policy": { "file": "policy.co", "sha256": "470bfaea5ca9297edde3c6f9dd1287ac090b0db94091edd9bf067c4d63c22ec5", "parse_diagnostics": 0, "unroll_depth": [] },
  "question": { "action": "respond with permitted insurance answer", "obligation_context": "demands_and_needs_established", "pins": [{ "name": "respond with permitted insurance answer", "variable": 22, "value": 1, "source": "action" }, { "name": "demands_and_needs_established", "variable": 6, "value": 0, "source": "obligation" }, { "name": "personal_recommendation", "variable": 1, "value": 1, "source": "conditioning" }] },
  "variables": {
    "x0": { "kind": "intent", "name": "ask insurance advice", "colang": { "file": "policy.co", "line": 138 } },
    "x1": { "kind": "context", "name": "personal_recommendation", "colang": { "file": "policy.co", "line": 209, "flow": "investment specific product" } },
    "x2": { "kind": "context", "name": "firm_is_authorised", "colang": { "file": "policy.co", "line": 213, "flow": "investment specific product" } },
    "x3": { "kind": "context", "name": "foreseeable_harm_identified", "colang": { "file": "policy.co", "line": 233, "flow": "investment specific product" } },
    "x4": { "kind": "context", "name": "target_market_matches", "colang": { "file": "policy.co", "line": 233, "flow": "investment specific product" } },
    "x5": { "kind": "context", "name": "names_specific_product", "colang": { "file": "policy.co", "line": 247, "flow": "investment generic advice" } },
    "x7": { "kind": "gate", "colang": { "file": "policy.co", "line": 450, "flow": "insurance gate" }, "definition": "x7 + x1 + x5 = 0", "named_definition": "x7 + $personal_recommendation + $names_specific_product = 0", "derived_from": ["x1", "x5"] },
    "x8": { "kind": "gate", "colang": { "file": "policy.co", "line": 450, "flow": "insurance gate" }, "definition": "x8 + x1*x5 + x7 = 0", "named_definition": "x8 + $personal_recommendation*$names_specific_product + x7 = 0", "derived_from": ["x1", "x5", "x7"] },
    "x9": { "kind": "gate", "subkind": "quadratic-split", "colang": { "file": "policy.co", "line": 450, "flow": "insurance gate" }, "definition": "x9 + x0*x8 = 0", "named_definition": "x9 + ask insurance advice*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." },
    "x10": { "kind": "context", "name": "has_insurance_permission", "colang": { "file": "policy.co", "line": 455, "flow": "insurance gate" } },
    "x11": { "kind": "gate", "colang": { "file": "policy.co", "line": 455, "flow": "insurance gate" }, "definition": "x11 + x2 + x10 = 0", "named_definition": "x11 + $firm_is_authorised + $has_insurance_permission = 0", "derived_from": ["x2", "x10"] },
    "x12": { "kind": "gate", "colang": { "file": "policy.co", "line": 455, "flow": "insurance gate" }, "definition": "x12 + x2 + x2*x10 + x10 + x11 = 1", "named_definition": "x12 + $firm_is_authorised + $firm_is_authorised*$has_insurance_permission + $has_insurance_permission + x11 = 1", "derived_from": ["x2", "x10", "x11"] },
    "x13": { "kind": "gate", "colang": { "file": "policy.co", "line": 457, "flow": "insurance gate" }, "definition": "x13 + x9 + x12*x23 = 0", "named_definition": "x13 + x9 + x12*aux_23 = 0", "derived_from": ["x9", "x12", "x23"] },
    "x14": { "kind": "gate", "colang": { "file": "policy.co", "line": 457, "flow": "insurance gate" }, "definition": "x14 + x9*x24 + x13 = 0", "named_definition": "x14 + x9*aux_24 + x13 = 0", "derived_from": ["x9", "x13", "x24"] },
    "x15": { "kind": "context", "name": "written_suitability_explanation", "colang": { "file": "policy.co", "line": 459, "flow": "insurance gate" } },
    "x16": { "kind": "gate", "colang": { "file": "policy.co", "line": 461, "flow": "insurance gate" }, "definition": "x16 + x14 + x15*x23 + x23 = 0", "named_definition": "x16 + x14 + $written_suitability_explanation*aux_23 + aux_23 = 0", "derived_from": ["x14", "x15", "x23"] },
    "x17": { "kind": "gate", "colang": { "file": "policy.co", "line": 461, "flow": "insurance gate" }, "definition": "x17 + x14*x25 + x16 = 0", "named_definition": "x17 + x14*aux_25 + x16 = 0", "derived_from": ["x14", "x16", "x25"] },
    "x18": { "kind": "gate", "colang": { "file": "policy.co", "line": 463, "flow": "insurance gate" }, "definition": "x18 + x3 + x4 = 1", "named_definition": "x18 + $foreseeable_harm_identified + $target_market_matches = 1", "derived_from": ["x3", "x4"] },
    "x19": { "kind": "gate", "colang": { "file": "policy.co", "line": 463, "flow": "insurance gate" }, "definition": "x19 + x3 + x3*x4 + x18 = 0", "named_definition": "x19 + $foreseeable_harm_identified + $foreseeable_harm_identified*$target_market_matches + x18 = 0", "derived_from": ["x3", "x4", "x18"] },
    "x20": { "kind": "gate", "colang": { "file": "policy.co", "line": 465, "flow": "insurance gate" }, "definition": "x20 + x17 + x19*x23 = 0", "named_definition": "x20 + x17 + x19*aux_23 = 0", "derived_from": ["x17", "x19", "x23"] },
    "x21": { "kind": "gate", "colang": { "file": "policy.co", "line": 465, "flow": "insurance gate" }, "definition": "x21 + x17*x26 + x20 = 0", "named_definition": "x21 + x17*aux_26 + x20 = 0", "derived_from": ["x17", "x20", "x26"] },
    "x22": { "kind": "action", "subkind": "forced-materialisation", "name": "respond with permitted insurance answer", "colang": { "file": "policy.co", "line": 467, "flow": "insurance gate" }, "definition": "x22 + x0 + x0*x21 = 0", "named_definition": "respond with permitted insurance answer + ask insurance advice + ask insurance advice*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." },
    "x23": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x23 + x0*x1 = 0", "named_definition": "aux_23 + ask insurance advice*$personal_recommendation = 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." },
    "x24": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x24 + x12*x23 = 0", "named_definition": "aux_24 + x12*aux_23 = 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." },
    "x25": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x25 + x15*x23 + x23 = 0", "named_definition": "aux_25 + $written_suitability_explanation*aux_23 + aux_23 = 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." },
    "x26": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x26 + x19*x23 = 0", "named_definition": "aux_26 + x19*aux_23 = 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." }
  },
  "steps_to_contradiction": 67,
  "operations": [
    { "id": 30, "op": "INSERT", "source": "original-S1", "equation": "x0*x21 + x22 + x0 = 0", "named_equation": "ask insurance advice*x21 + respond with permitted insurance answer + ask insurance advice = 0", "colang": { "file": "policy.co", "line": 467, "flow": "insurance gate" }, "pivot": 54 },
    { "id": 446, "op": "MULTIPLY", "base_id": 30, "multiplier": "x21" },
    { "id": 12, "op": "INSERT", "source": "original-S2", "equation": "x22 = 1", "named_equation": "respond with permitted insurance answer = 1", "reads_as": "respond with permitted insurance answer holds", "pin": { "name": "respond with permitted insurance answer", "value": 1 }, "pivot": 23 },
    { "id": 346, "op": "MULTIPLY", "base_id": 12, "multiplier": "x21", "pivot": 496 },
    { "id": 447, "op": "ADD", "parents": [446, 346], "pivot": 22 },
    { "id": 530, "op": "MULTIPLY", "base_id": 447, "multiplier": "x17" },
    { "id": 29, "op": "INSERT", "source": "original-S1", "equation": "x17*x26 + x21 + x20 = 0", "named_equation": "x17*aux_26 + x21 + x20 = 0", "colang": { "file": "policy.co", "line": 465, "flow": "insurance gate" }, "pivot": 450 },
    { "id": 437, "op": "MULTIPLY", "base_id": 29, "multiplier": "x17" },
    { "id": 438, "op": "ADD", "parents": [437, 29], "pivot": 445 },
    { "id": 531, "op": "ADD", "parents": [530, 438] },
    { "id": 27, "op": "INSERT", "source": "original-S1", "equation": "x19*x23 + x26 = 0", "named_equation": "x19*aux_23 + aux_26 = 0" },
    { "id": 26, "op": "INSERT", "source": "original-S1", "equation": "x19*x23 + x20 + x17 = 0", "named_equation": "x19*aux_23 + x20 + x17 = 0", "colang": { "file": "policy.co", "line": 465, "flow": "insurance gate" }, "pivot": 474 },
    { "id": 28, "op": "ADD", "parents": [27, 26], "pivot": 27 },
    { "id": 431, "op": "MULTIPLY", "base_id": 28, "multiplier": "x17" },
    { "id": 432, "op": "ADD", "parents": [431, 29], "pivot": 444 },
    { "id": 532, "op": "ADD", "parents": [531, 432], "pivot": 18 },
    { "id": 595, "op": "MULTIPLY", "base_id": 532, "multiplier": "x14" },
    { "id": 24, "op": "INSERT", "source": "original-S1", "equation": "x14*x25 + x17 + x16 = 0", "named_equation": "x14*aux_25 + x17 + x16 = 0", "colang": { "file": "policy.co", "line": 461, "flow": "insurance gate" }, "pivot": 401 },
    { "id": 408, "op": "MULTIPLY", "base_id": 24, "multiplier": "x14" },
    { "id": 409, "op": "ADD", "parents": [408, 24], "pivot": 393 },
    { "id": 596, "op": "ADD", "parents": [595, 409] },
    { "id": 22, "op": "INSERT", "source": "original-S1", "equation": "x15*x23 + x25 + x23 = 0", "named_equation": "$written_suitability_explanation*aux_23 + aux_25 + aux_23 = 0" },
    { "id": 21, "op": "INSERT", "source": "original-S1", "equation": "x15*x23 + x23 + x16 + x14 = 0", "named_equation": "$written_suitability_explanation*aux_23 + aux_23 + x16 + x14 = 0", "colang": { "file": "policy.co", "line": 461, "flow": "insurance gate" }, "pivot": 416 },
    { "id": 23, "op": "ADD", "parents": [22, 21], "pivot": 26 },
    { "id": 398, "op": "MULTIPLY", "base_id": 23, "multiplier": "x14" },
    { "id": 399, "op": "ADD", "parents": [398, 24], "pivot": 392 },
    { "id": 597, "op": "ADD", "parents": [596, 399] },
    { "id": 10, "op": "INSERT", "source": "original-S2", "equation": "x1 = 1", "named_equation": "$personal_recommendation = 1", "reads_as": "$personal_recommendation holds", "pin": { "name": "personal_recommendation", "value": 1 }, "pivot": 2 },
    { "id": 288, "op": "MULTIPLY", "base_id": 10, "multiplier": "x5" },
    { "id": 13, "op": "INSERT", "source": "original-S1", "equation": "x1*x5 + x8 + x7 = 0", "named_equation": "$personal_recommendation*$names_specific_product + x8 + x7 = 0", "colang": { "file": "policy.co", "line": 450, "flow": "insurance gate" }, "pivot": 69 },
    { "id": 289, "op": "ADD", "parents": [288, 13], "pivot": 9 },
    { "id": 487, "op": "MULTIPLY", "base_id": 289, "multiplier": "x0" },
    { "id": 16, "op": "INSERT", "source": "original-S1", "equation": "x0*x8 + x9 = 0", "named_equation": "ask insurance advice*x8 + x9 = 0", "colang": { "file": "policy.co", "line": 450, "flow": "insurance gate" }, "pivot": 41 },
    { "id": 488, "op": "ADD", "parents": [487, 16] },
    { "id": 1, "op": "INSERT", "source": "original-S2", "equation": "x7 + x5 + x1 = 0", "named_equation": "x7 + $names_specific_product + $personal_recommendation = 0", "colang": { "file": "policy.co", "line": 450, "flow": "insurance gate" }, "pivot": 8 },
    { "id": 31, "op": "MULTIPLY", "base_id": 1, "multiplier": "x0", "pivot": 40 },
    { "id": 489, "op": "ADD", "parents": [488, 31] },
    { "id": 15, "op": "INSERT", "source": "original-S1", "equation": "x0*x1 + x23 = 0", "named_equation": "ask insurance advice*$personal_recommendation + aux_23 = 0", "pivot": 34 },
    { "id": 490, "op": "ADD", "parents": [489, 15] },
    { "id": 283, "op": "MULTIPLY", "base_id": 10, "multiplier": "x0" },
    { "id": 284, "op": "ADD", "parents": [283, 15], "pivot": 24 },
    { "id": 491, "op": "ADD", "parents": [490, 284], "pivot": 10 },
    { "id": 545, "op": "MULTIPLY", "base_id": 491, "multiplier": "x13" },
    { "id": 18, "op": "INSERT", "source": "original-S1", "equation": "x12*x23 + x24 = 0", "named_equation": "x12*aux_23 + aux_24 = 0" },
    { "id": 17, "op": "INSERT", "source": "original-S1", "equation": "x12*x23 + x13 + x9 = 0", "named_equation": "x12*aux_23 + x13 + x9 = 0", "colang": { "file": "policy.co", "line": 457, "flow": "insurance gate" }, "pivot": 362 },
    { "id": 19, "op": "ADD", "parents": [18, 17], "pivot": 25 },
    { "id": 366, "op": "MULTIPLY", "base_id": 19, "multiplier": "x9" },
    { "id": 20, "op": "INSERT", "source": "original-S1", "equation": "x9*x24 + x14 + x13 = 0", "named_equation": "x9*aux_24 + x14 + x13 = 0", "colang": { "file": "policy.co", "line": 457, "flow": "insurance gate" }, "pivot": 300 },
    { "id": 367, "op": "ADD", "parents": [366, 20], "pivot": 289 },
    { "id": 546, "op": "ADD", "parents": [545, 367] },
    { "id": 469, "op": "MULTIPLY", "base_id": 284, "multiplier": "x13" },
    { "id": 359, "op": "MULTIPLY", "base_id": 17, "multiplier": "x23", "pivot": 381 },
    { "id": 470, "op": "ADD", "parents": [469, 359] },
    { "id": 471, "op": "ADD", "parents": [470, 17] },
    { "id": 465, "op": "MULTIPLY", "base_id": 284, "multiplier": "x9", "pivot": 299 },
    { "id": 472, "op": "ADD", "parents": [471, 465], "pivot": 46 },
    { "id": 547, "op": "ADD", "parents": [546, 472] },
    { "id": 355, "op": "MULTIPLY", "base_id": 16, "multiplier": "x0", "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] },
    { "id": 442, "op": "MULTIPLY", "base_id": 30, "multiplier": "x0" },
    { "id": 330, "op": "MULTIPLY", "base_id": 12, "multiplier": "x0", "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 }
  ],
  "final_step": { "op": "ADD", "inputs": [599, 445], "instruction": "Compute the linear combination of the final inputs to derive 0 = 1." },
  "provenance": { "declared": false, "controls": {}, "undeclared": ["x1", "x2", "x3", "x4", "x5", "x10", "x15"], "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."] },
  "control_integrity": { "checked": true, "clean": true, "findings": [] },
  "detection": { "computed": true, "dependent": false, "atoms": [], "bound": null, "uncalibrated": [] }
}