{
  "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 investment answer", "obligation_context": "has_advising_permission", "pins": [{ "name": "respond with permitted investment answer", "variable": 56, "value": 1, "source": "action" }, { "name": "has_advising_permission", "variable": 10, "value": 0, "source": "obligation" }, { "name": "personal_recommendation", "variable": 2, "value": 1, "source": "conditioning" }] },
  "variables": {
    "x0": { "kind": "intent", "name": "ask investment advice", "colang": { "file": "policy.co", "line": 104 } },
    "x1": { "kind": "intent", "name": "ask about specific fund", "colang": { "file": "policy.co", "line": 110 } },
    "x2": { "kind": "context", "name": "personal_recommendation", "colang": { "file": "policy.co", "line": 209, "flow": "investment specific product" } },
    "x3": { "kind": "context", "name": "is_inducement", "colang": { "file": "policy.co", "line": 209, "flow": "investment specific product" } },
    "x4": { "kind": "context", "name": "firm_is_authorised", "colang": { "file": "policy.co", "line": 213, "flow": "investment specific product" } },
    "x5": { "kind": "context", "name": "promotion_approved", "colang": { "file": "policy.co", "line": 214, "flow": "investment specific product" } },
    "x6": { "kind": "context", "name": "has_s21_approver_permission", "colang": { "file": "policy.co", "line": 214, "flow": "investment specific product" } },
    "x7": { "kind": "gate", "colang": { "file": "policy.co", "line": 214, "flow": "investment specific product" }, "definition": "x7 + x5 + x6 = 0", "named_definition": "x7 + $promotion_approved + $has_s21_approver_permission = 0", "derived_from": ["x5", "x6"] },
    "x8": { "kind": "gate", "colang": { "file": "policy.co", "line": 214, "flow": "investment specific product" }, "definition": "x8 + x5 + x5*x6 + x6 + x7 = 1", "named_definition": "x8 + $promotion_approved + $promotion_approved*$has_s21_approver_permission + $has_s21_approver_permission + x7 = 1", "derived_from": ["x5", "x6", "x7"] },
    "x9": { "kind": "gate", "subkind": "quadratic-split", "colang": { "file": "policy.co", "line": 214, "flow": "investment specific product" }, "definition": "x9 + x8*x58 = 0", "named_definition": "x9 + x8*aux_58 = 0", "derived_from": ["x58", "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_advising_permission", "colang": { "file": "policy.co", "line": 219, "flow": "investment specific product" } },
    "x11": { "kind": "gate", "colang": { "file": "policy.co", "line": 219, "flow": "investment specific product" }, "definition": "x11 = 1", "named_definition": "x11 = 1" },
    "x12": { "kind": "context", "name": "is_targeted_support", "colang": { "file": "policy.co", "line": 220, "flow": "investment specific product" } },
    "x13": { "kind": "gate", "colang": { "file": "policy.co", "line": 222, "flow": "investment specific product" }, "definition": "x13 + x9 + x12*x60 + x60 = 0", "named_definition": "x13 + x9 + $is_targeted_support*aux_60 + aux_60 = 0", "derived_from": ["x9", "x12", "x60"] },
    "x14": { "kind": "gate", "colang": { "file": "policy.co", "line": 222, "flow": "investment specific product" }, "definition": "x14 + x9*x61 + x13 = 0", "named_definition": "x14 + x9*aux_61 + x13 = 0", "derived_from": ["x9", "x13", "x61"] },
    "x15": { "kind": "context", "name": "has_targeted_support_permission", "colang": { "file": "policy.co", "line": 225, "flow": "investment specific product" } },
    "x16": { "kind": "context", "name": "consumer_segment_predefined", "colang": { "file": "policy.co", "line": 225, "flow": "investment specific product" } },
    "x17": { "kind": "gate", "colang": { "file": "policy.co", "line": 225, "flow": "investment specific product" }, "definition": "x17 + x15 + x16 = 0", "named_definition": "x17 + $has_targeted_support_permission + $consumer_segment_predefined = 0", "derived_from": ["x15", "x16"] },
    "x18": { "kind": "gate", "colang": { "file": "policy.co", "line": 225, "flow": "investment specific product" }, "definition": "x18 + x15 + x15*x16 + x16 + x17 = 1", "named_definition": "x18 + $has_targeted_support_permission + $has_targeted_support_permission*$consumer_segment_predefined + $consumer_segment_predefined + x17 = 1", "derived_from": ["x15", "x16", "x17"] },
    "x19": { "kind": "context", "name": "suggestion_is_ready_made", "colang": { "file": "policy.co", "line": 225, "flow": "investment specific product" } },
    "x20": { "kind": "gate", "colang": { "file": "policy.co", "line": 225, "flow": "investment specific product" }, "definition": "x20 + x18 + x19 = 1", "named_definition": "x20 + x18 + $suggestion_is_ready_made = 1", "derived_from": ["x18", "x19"] },
    "x21": { "kind": "gate", "colang": { "file": "policy.co", "line": 225, "flow": "investment specific product" }, "definition": "x21 + x18 + x18*x19 + x20 = 0", "named_definition": "x21 + x18 + x18*$suggestion_is_ready_made + x20 = 0", "derived_from": ["x18", "x19", "x20"] },
    "x22": { "kind": "gate", "colang": { "file": "policy.co", "line": 227, "flow": "investment specific product" }, "definition": "x22 + x14 + x21*x62 = 0", "named_definition": "x22 + x14 + x21*aux_62 = 0", "derived_from": ["x14", "x21", "x62"] },
    "x23": { "kind": "gate", "colang": { "file": "policy.co", "line": 227, "flow": "investment specific product" }, "definition": "x23 + x14*x63 + x22 = 0", "named_definition": "x23 + x14*aux_63 + x22 = 0", "derived_from": ["x14", "x22", "x63"] },
    "x24": { "kind": "context", "name": "suitability_assessment_done", "colang": { "file": "policy.co", "line": 229, "flow": "investment specific product" } },
    "x25": { "kind": "context", "name": "risk_profile_assessed", "colang": { "file": "policy.co", "line": 229, "flow": "investment specific product" } },
    "x26": { "kind": "gate", "colang": { "file": "policy.co", "line": 229, "flow": "investment specific product" }, "definition": "x26 + x24 + x25 = 0", "named_definition": "x26 + $suitability_assessment_done + $risk_profile_assessed = 0", "derived_from": ["x24", "x25"] },
    "x27": { "kind": "gate", "colang": { "file": "policy.co", "line": 229, "flow": "investment specific product" }, "definition": "x27 + x24 + x24*x25 + x25 + x26 = 1", "named_definition": "x27 + $suitability_assessment_done + $suitability_assessment_done*$risk_profile_assessed + $risk_profile_assessed + x26 = 1", "derived_from": ["x24", "x25", "x26"] },
    "x28": { "kind": "context", "name": "capacity_for_loss_assessed", "colang": { "file": "policy.co", "line": 229, "flow": "investment specific product" } },
    "x29": { "kind": "gate", "colang": { "file": "policy.co", "line": 229, "flow": "investment specific product" }, "definition": "x29 + x27 + x28 = 1", "named_definition": "x29 + x27 + $capacity_for_loss_assessed = 1", "derived_from": ["x27", "x28"] },
    "x30": { "kind": "gate", "colang": { "file": "policy.co", "line": 229, "flow": "investment specific product" }, "definition": "x30 + x27 + x27*x28 + x29 = 0", "named_definition": "x30 + x27 + x27*$capacity_for_loss_assessed + x29 = 0", "derived_from": ["x27", "x28", "x29"] },
    "x31": { "kind": "gate", "colang": { "file": "policy.co", "line": 231, "flow": "investment specific product" }, "definition": "x31 + x23 + x30*x59 = 0", "named_definition": "x31 + x23 + x30*aux_59 = 0", "derived_from": ["x23", "x30", "x59"] },
    "x32": { "kind": "gate", "colang": { "file": "policy.co", "line": 231, "flow": "investment specific product" }, "definition": "x32 + x23*x64 + x31 = 0", "named_definition": "x32 + x23*aux_64 + x31 = 0", "derived_from": ["x23", "x31", "x64"] },
    "x33": { "kind": "context", "name": "foreseeable_harm_identified", "colang": { "file": "policy.co", "line": 233, "flow": "investment specific product" } },
    "x34": { "kind": "context", "name": "fair_value_assessed", "colang": { "file": "policy.co", "line": 233, "flow": "investment specific product" } },
    "x35": { "kind": "gate", "colang": { "file": "policy.co", "line": 233, "flow": "investment specific product" }, "definition": "x35 + x33 + x34 = 1", "named_definition": "x35 + $foreseeable_harm_identified + $fair_value_assessed = 1", "derived_from": ["x33", "x34"] },
    "x36": { "kind": "gate", "colang": { "file": "policy.co", "line": 233, "flow": "investment specific product" }, "definition": "x36 + x33 + x33*x34 + x35 = 0", "named_definition": "x36 + $foreseeable_harm_identified + $foreseeable_harm_identified*$fair_value_assessed + x35 = 0", "derived_from": ["x33", "x34", "x35"] },
    "x37": { "kind": "context", "name": "target_market_matches", "colang": { "file": "policy.co", "line": 233, "flow": "investment specific product" } },
    "x38": { "kind": "gate", "colang": { "file": "policy.co", "line": 233, "flow": "investment specific product" }, "definition": "x38 + x36 + x37 = 1", "named_definition": "x38 + x36 + $target_market_matches = 1", "derived_from": ["x36", "x37"] },
    "x39": { "kind": "gate", "colang": { "file": "policy.co", "line": 233, "flow": "investment specific product" }, "definition": "x39 + x36 + x36*x37 + x38 = 0", "named_definition": "x39 + x36 + x36*$target_market_matches + x38 = 0", "derived_from": ["x36", "x37", "x38"] },
    "x40": { "kind": "gate", "colang": { "file": "policy.co", "line": 235, "flow": "investment specific product" }, "definition": "x40 + x32 + x39*x59 = 0", "named_definition": "x40 + x32 + x39*aux_59 = 0", "derived_from": ["x32", "x39", "x59"] },
    "x41": { "kind": "gate", "colang": { "file": "policy.co", "line": 235, "flow": "investment specific product" }, "definition": "x41 + x32*x65 + x40 = 0", "named_definition": "x41 + x32*aux_65 + x40 = 0", "derived_from": ["x32", "x40", "x65"] },
    "x42": { "kind": "context", "name": "consultant_receives_higher_commission", "colang": { "file": "policy.co", "line": 237, "flow": "investment specific product" } },
    "x43": { "kind": "gate", "colang": { "file": "policy.co", "line": 239, "flow": "investment specific product" }, "definition": "x43 + x41 + x59*x66 = 0", "named_definition": "x43 + x41 + aux_59*aux_66 = 0", "derived_from": ["x41", "x59", "x66"] },
    "x44": { "kind": "gate", "colang": { "file": "policy.co", "line": 239, "flow": "investment specific product" }, "definition": "x44 + x41*x67 + x43 = 0", "named_definition": "x44 + x41*aux_67 + x43 = 0", "derived_from": ["x41", "x43", "x67"] },
    "x45": { "kind": "gate", "subkind": "quadratic-split", "colang": { "file": "policy.co", "line": 241, "flow": "investment specific product" }, "definition": "x45 + x1 + x1*x44 = 0", "named_definition": "x45 + ask about specific fund + ask about specific fund*x44 = 0", "derived_from": ["x1", "x44"], "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." },
    "x46": { "kind": "context", "name": "is_generic_asset_class_only", "colang": { "file": "policy.co", "line": 247, "flow": "investment generic advice" } },
    "x47": { "kind": "context", "name": "names_specific_product", "colang": { "file": "policy.co", "line": 247, "flow": "investment generic advice" } },
    "x48": { "kind": "action", "subkind": "quadratic-split", "name": "respond with generic asset class commentary", "colang": { "file": "policy.co", "line": 248, "flow": "investment generic advice" }, "definition": "x48 + x0*x68 = 0", "named_definition": "respond with generic asset class commentary + ask investment advice*aux_68 = 0", "derived_from": ["x0", "x68"], "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." },
    "x49": { "kind": "gate", "colang": { "file": "policy.co", "line": 253, "flow": "investment generic advice" }, "definition": "x49 + x0*x2 + x48 = 0", "named_definition": "x49 + ask investment advice*$personal_recommendation + respond with generic asset class commentary = 0", "derived_from": ["x0", "x2", "x48"] },
    "x50": { "kind": "gate", "colang": { "file": "policy.co", "line": 253, "flow": "investment generic advice" }, "definition": "x50 + x48*x69 + x49 = 0", "named_definition": "x50 + respond with generic asset class commentary*aux_69 + x49 = 0", "derived_from": ["x48", "x49", "x69"] },
    "x51": { "kind": "gate", "colang": { "file": "policy.co", "line": 255, "flow": "investment generic advice" }, "definition": "x51 + x24 + x28 = 0", "named_definition": "x51 + $suitability_assessment_done + $capacity_for_loss_assessed = 0", "derived_from": ["x24", "x28"] },
    "x52": { "kind": "gate", "colang": { "file": "policy.co", "line": 255, "flow": "investment generic advice" }, "definition": "x52 + x24 + x24*x28 + x28 + x51 = 1", "named_definition": "x52 + $suitability_assessment_done + $suitability_assessment_done*$capacity_for_loss_assessed + $capacity_for_loss_assessed + x51 = 1", "derived_from": ["x24", "x28", "x51"] },
    "x53": { "kind": "gate", "colang": { "file": "policy.co", "line": 257, "flow": "investment generic advice" }, "definition": "x53 + x0*x52 + x50 = 0", "named_definition": "x53 + ask investment advice*x52 + x50 = 0", "derived_from": ["x0", "x50", "x52"] },
    "x54": { "kind": "gate", "colang": { "file": "policy.co", "line": 257, "flow": "investment generic advice" }, "definition": "x54 + x50*x70 + x53 = 0", "named_definition": "x54 + x50*aux_70 + x53 = 0", "derived_from": ["x50", "x53", "x70"] },
    "x55": { "kind": "gate", "colang": { "file": "policy.co", "line": 259, "flow": "investment generic advice" }, "definition": "x55 + x0 + x0*x54 + x45 = 0", "named_definition": "x55 + ask investment advice + ask investment advice*x54 + x45 = 0", "derived_from": ["x0", "x45", "x54"] },
    "x56": { "kind": "action", "name": "respond with permitted investment answer", "colang": { "file": "policy.co", "line": 241, "flow": "investment specific product" }, "definition": "x56 + x45*x71 + x55 = 0", "named_definition": "respond with permitted investment answer + x45*aux_71 + x55 = 0", "derived_from": ["x45", "x55", "x71"] },
    "x57": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x57 + x3 + x3*x4 = 0", "named_definition": "aux_57 + $is_inducement + $is_inducement*$firm_is_authorised = 0", "derived_from": ["x3", "x4"], "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." },
    "x58": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x58 + x1*x57 = 0", "named_definition": "aux_58 + ask about specific fund*aux_57 = 0", "derived_from": ["x1", "x57"], "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." },
    "x59": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x59 + x1*x2 = 0", "named_definition": "aux_59 + ask about specific fund*$personal_recommendation = 0", "derived_from": ["x1", "x2"], "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." },
    "x60": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x60 + x11*x59 = 0", "named_definition": "aux_60 + x11*aux_59 = 0", "derived_from": ["x59", "x11"], "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." },
    "x61": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x61 + x12*x60 + x60 = 0", "named_definition": "aux_61 + $is_targeted_support*aux_60 + aux_60 = 0", "derived_from": ["x60", "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." },
    "x62": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x62 + x12*x59 = 0", "named_definition": "aux_62 + $is_targeted_support*aux_59 = 0", "derived_from": ["x59", "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." },
    "x63": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x63 + x21*x62 = 0", "named_definition": "aux_63 + x21*aux_62 = 0", "derived_from": ["x62", "x21"], "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." },
    "x64": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x64 + x30*x59 = 0", "named_definition": "aux_64 + x30*aux_59 = 0", "derived_from": ["x59", "x30"], "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." },
    "x65": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x65 + x39*x59 = 0", "named_definition": "aux_65 + x39*aux_59 = 0", "derived_from": ["x59", "x39"], "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." },
    "x66": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x66 + x34*x42 + x42 = 0", "named_definition": "aux_66 + $fair_value_assessed*$consultant_receives_higher_commission + $consultant_receives_higher_commission = 0", "derived_from": ["x42", "x34"], "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." },
    "x67": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x67 + x59*x66 = 0", "named_definition": "aux_67 + aux_59*aux_66 = 0", "derived_from": ["x59", "x66"], "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." },
    "x68": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x68 + x46 + x46*x47 = 0", "named_definition": "aux_68 + $is_generic_asset_class_only + $is_generic_asset_class_only*$names_specific_product = 0", "derived_from": ["x46", "x47"], "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." },
    "x69": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x69 + x0*x2 = 0", "named_definition": "aux_69 + ask investment advice*$personal_recommendation = 0", "derived_from": ["x0", "x2"], "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." },
    "x70": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x70 + x0*x52 = 0", "named_definition": "aux_70 + ask investment advice*x52 = 0", "derived_from": ["x0", "x52"], "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." },
    "x71": { "kind": "aux", "subkind": "degree3-materialisation", "definition": "x71 + x0 + x0*x54 = 0", "named_definition": "aux_71 + ask investment advice + ask investment advice*x54 = 0", "derived_from": ["x0", "x54"], "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": 3,
  "operations": [
    { "id": 28, "op": "INSERT", "source": "original-S2", "equation": "x10 = 0", "named_equation": "$has_advising_permission = 0", "reads_as": "$has_advising_permission does not hold", "pin": { "name": "has_advising_permission", "value": 0 }, "pivot": 11 },
    { "id": 2154, "op": "MULTIPLY", "base_id": 28, "multiplier": "x56" },
    { "id": 30, "op": "INSERT", "source": "original-S2", "equation": "x10*x56 = 1", "named_equation": "$has_advising_permission*respond with permitted investment answer = 1", "origin": "patch", "pivot": 970 }
  ],
  "final_step": { "op": "ADD", "inputs": [2154, 30], "instruction": "Compute the linear combination of the final inputs to derive 0 = 1." },
  "provenance": { "declared": false, "controls": {}, "undeclared": ["x2", "x3", "x4", "x5", "x6", "x10", "x12", "x15", "x16", "x19", "x24", "x25", "x28", "x33", "x34", "x37", "x42", "x46", "x47"], "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": [] }
}