{
  "certificate": {
    "certificate_type": "phase0",
    "control_integrity": {
      "checked": true,
      "clean": true,
      "findings": []
    },
    "detail": "full",
    "detection": {
      "atoms": [],
      "bound": null,
      "computed": true,
      "dependent": false,
      "uncalibrated": []
    },
    "encoding_check": {
      "definitions": 52,
      "equations": 94,
      "held": true,
      "means": "The CNF the oracle refuted decodes back to the equations above: every auxiliary stands for the product it claims, and every clause is one of these equations with its auxiliaries substituted. What remains unchecked is the refutation itself, not the translation."
    },
    "final_step": {
      "instruction": "0 = 1 was asserted directly by this row rather than derived, so there is no operation to replay.",
      "op": "INSERT",
      "oracle": true,
      "source": "cryptominisat-phase0"
    },
    "format_version": 1,
    "note": "The contradiction was asserted by Phase 0's SAT solver, and proof_log names a proof of it: the CNF, which decodes to phase0_system, and the FRAT log, which frat-rs elaborates to LRAT and checks. It cannot be re-derived from the operations below.",
    "operations": [],
    "oracle_dependencies": [
      "cryptominisat-phase0"
    ],
    "origin_class": "external_proof",
    "phase0_system": [
      {
        "equation": "x12 + x12*x13 + x52 = 0",
        "named_equation": "$client_claims_high_net_worth + $client_claims_high_net_worth*$client_is_certified_high_net_worth + aux_52 = 0"
      },
      {
        "equation": "x5 + x5*x9 + x9 + x14 + x15 = 1",
        "named_equation": "$hnw_signed_prescribed_statement + $hnw_signed_prescribed_statement*$hnw_statement_within_12_months + $hnw_statement_within_12_months + x14 + x15 = 1"
      },
      {
        "equation": "x0*x52 + x53 = 0",
        "named_equation": "ask about high risk investment*aux_52 + aux_53 = 0"
      },
      {
        "equation": "x0*x10 + x11 = 0",
        "named_equation": "ask about high risk investment*$incentive_offered + block incentive = 0"
      },
      {
        "equation": "x11 + x15*x53 + x16 = 0",
        "named_equation": "block incentive + x15*aux_53 + x16 = 0"
      },
      {
        "equation": "x15*x53 + x54 = 0",
        "named_equation": "x15*aux_53 + aux_54 = 0"
      },
      {
        "equation": "x11*x54 + x16 + x17 = 0",
        "named_equation": "block incentive*aux_54 + x16 + x17 = 0"
      },
      {
        "equation": "x6 + x6*x7 + x7 + x55 = 1",
        "named_equation": "$hnw_income_over_100k + $hnw_income_over_100k*$hnw_net_assets_over_250k + $hnw_net_assets_over_250k + aux_55 = 1"
      },
      {
        "equation": "x17 + x18 + x53*x55 = 0",
        "named_equation": "x17 + x18 + aux_53*aux_55 = 0"
      },
      {
        "equation": "x53*x55 + x56 = 0",
        "named_equation": "aux_53*aux_55 + aux_56 = 0"
      },
      {
        "equation": "x17*x56 + x18 + x19 = 0",
        "named_equation": "x17*aux_56 + x18 + x19 = 0"
      },
      {
        "equation": "x6*x7 + x7 + x57 = 0",
        "named_equation": "$hnw_income_over_100k*$hnw_net_assets_over_250k + $hnw_net_assets_over_250k + aux_57 = 0"
      },
      {
        "equation": "x8*x57 + x57 + x58 = 0",
        "named_equation": "$hnw_excludes_residence_pension_insurance*aux_57 + aux_57 + aux_58 = 0"
      },
      {
        "equation": "x19 + x20 + x53*x58 = 0",
        "named_equation": "x19 + x20 + aux_53*aux_58 = 0"
      },
      {
        "equation": "x53*x58 + x59 = 0",
        "named_equation": "aux_53*aux_58 + aux_59 = 0"
      },
      {
        "equation": "x19*x59 + x20 + x21 = 0",
        "named_equation": "x19*aux_59 + x20 + x21 = 0"
      },
      {
        "equation": "x13*x23 + x23 + x60 = 0",
        "named_equation": "$client_is_certified_high_net_worth*$client_is_retail + $client_is_retail + aux_60 = 0"
      },
      {
        "equation": "x24*x60 + x60 + x61 = 0",
        "named_equation": "$client_is_certified_sophisticated*aux_60 + aux_60 + aux_61 = 0"
      },
      {
        "equation": "x25*x61 + x61 + x62 = 0",
        "named_equation": "$client_is_self_certified_sophisticated*aux_61 + aux_61 + aux_62 = 0"
      },
      {
        "equation": "x0*x22 + x63 = 0",
        "named_equation": "ask about high risk investment*$product_is_nmmi + aux_63 = 0"
      },
      {
        "equation": "x26*x62 + x62 + x64 = 0",
        "named_equation": "$client_is_professional*aux_62 + aux_62 + aux_64 = 0"
      },
      {
        "equation": "x21 + x27 + x63*x64 = 0",
        "named_equation": "x21 + x27 + aux_63*aux_64 = 0"
      },
      {
        "equation": "x63*x64 + x65 = 0",
        "named_equation": "aux_63*aux_64 + aux_65 = 0"
      },
      {
        "equation": "x21*x65 + x27 + x28 = 0",
        "named_equation": "x21*aux_65 + x27 + x28 = 0"
      },
      {
        "equation": "x28 + x29*x63 + x30 + x63 = 0",
        "named_equation": "x28 + $categorisation_verified*aux_63 + x30 + aux_63 = 0"
      },
      {
        "equation": "x29*x63 + x63 + x66 = 0",
        "named_equation": "$categorisation_verified*aux_63 + aux_63 + aux_66 = 0"
      },
      {
        "equation": "x28*x66 + x30 + x31 = 0",
        "named_equation": "x28*aux_66 + x30 + x31 = 0"
      },
      {
        "equation": "x0*x22 + x31 + x33 = 0",
        "named_equation": "ask about high risk investment*$product_is_nmmi + x31 + x33 = 0"
      },
      {
        "equation": "x31*x63 + x33 + x34 = 0",
        "named_equation": "x31*aux_63 + x33 + x34 = 0"
      },
      {
        "equation": "x34 + x35*x63 + x36 + x63 = 0",
        "named_equation": "x34 + $fscs_fos_loss_warning_given*aux_63 + x36 + aux_63 = 0"
      },
      {
        "equation": "x35*x63 + x63 + x67 = 0",
        "named_equation": "$fscs_fos_loss_warning_given*aux_63 + aux_63 + aux_67 = 0"
      },
      {
        "equation": "x34*x67 + x36 + x37 = 0",
        "named_equation": "x34*aux_67 + x36 + x37 = 0"
      },
      {
        "equation": "x0*x38 + x37 + x39 = 0",
        "named_equation": "ask about high risk investment*$product_is_rmmi + x37 + x39 = 0"
      },
      {
        "equation": "x0*x38 + x68 = 0",
        "named_equation": "ask about high risk investment*$product_is_rmmi + aux_68 = 0"
      },
      {
        "equation": "x37*x68 + x39 + x40 = 0",
        "named_equation": "x37*aux_68 + x39 + x40 = 0"
      },
      {
        "equation": "x41 + x41*x42 + x69 = 0",
        "named_equation": "$client_is_first_time_investor + $client_is_first_time_investor*$cooling_off_completed + aux_69 = 0"
      },
      {
        "equation": "x68*x69 + x70 = 0",
        "named_equation": "aux_68*aux_69 + aux_70 = 0"
      },
      {
        "equation": "x13 + x13*x26 + x26 + x71 = 1",
        "named_equation": "$client_is_certified_high_net_worth + $client_is_certified_high_net_worth*$client_is_professional + $client_is_professional + aux_71 = 1"
      },
      {
        "equation": "x40 + x43 + x70*x71 = 0",
        "named_equation": "x40 + x43 + aux_70*aux_71 = 0"
      },
      {
        "equation": "x70*x71 + x72 = 0",
        "named_equation": "aux_70*aux_71 + aux_72 = 0"
      },
      {
        "equation": "x40*x72 + x43 + x44 = 0",
        "named_equation": "x40*aux_72 + x43 + x44 = 0"
      },
      {
        "equation": "x1 + x1*x2 + x73 = 0",
        "named_equation": "$personal_recommendation + $personal_recommendation*$has_advising_permission + aux_73 = 0"
      },
      {
        "equation": "x0*x73 + x44 + x45 = 0",
        "named_equation": "ask about high risk investment*aux_73 + x44 + x45 = 0"
      },
      {
        "equation": "x0*x73 + x74 = 0",
        "named_equation": "ask about high risk investment*aux_73 + aux_74 = 0"
      },
      {
        "equation": "x44*x74 + x45 + x46 = 0",
        "named_equation": "x44*aux_74 + x45 + x46 = 0"
      },
      {
        "equation": "x1*x2 + x75 = 0",
        "named_equation": "$personal_recommendation*$has_advising_permission + aux_75 = 0"
      },
      {
        "equation": "x3 + x3*x4 + x4 + x47 + x48 = 1",
        "named_equation": "$suitability_assessment_done + $suitability_assessment_done*$capacity_for_loss_assessed + $capacity_for_loss_assessed + x47 + x48 = 1"
      },
      {
        "equation": "x0*x75 + x76 = 0",
        "named_equation": "ask about high risk investment*aux_75 + aux_76 = 0"
      },
      {
        "equation": "x46 + x48*x76 + x49 = 0",
        "named_equation": "x46 + x48*aux_76 + x49 = 0"
      },
      {
        "equation": "x48*x76 + x77 = 0",
        "named_equation": "x48*aux_76 + aux_77 = 0"
      },
      {
        "equation": "x46*x77 + x49 + x50 = 0",
        "named_equation": "x46*aux_77 + x49 + x50 = 0"
      },
      {
        "equation": "x0 + x0*x50 + x51 = 0",
        "named_equation": "ask about high risk investment + ask about high risk investment*x50 + respond with permitted high risk answer = 0"
      },
      {
        "equation": "x14 + x9 + x5 = 0",
        "named_equation": "x14 + $hnw_statement_within_12_months + $hnw_signed_prescribed_statement = 0"
      },
      {
        "equation": "x22 = 1",
        "named_equation": "$product_is_nmmi = 1"
      },
      {
        "equation": "x32 = 0",
        "named_equation": "$risk_warning_given = 0"
      },
      {
        "equation": "x47 + x4 + x3 = 0",
        "named_equation": "x47 + $capacity_for_loss_assessed + $suitability_assessment_done = 0"
      },
      {
        "equation": "x51 = 1",
        "named_equation": "respond with permitted high risk answer = 1"
      },
      {
        "equation": "x54 + x16 + x11 = 0",
        "named_equation": "aux_54 + x16 + block incentive = 0"
      },
      {
        "equation": "x56 + x18 + x17 = 0",
        "named_equation": "aux_56 + x18 + x17 = 0"
      },
      {
        "equation": "x57 + x55 + x6 = 1",
        "named_equation": "aux_57 + aux_55 + $hnw_income_over_100k = 1"
      },
      {
        "equation": "x59 + x20 + x19 = 0",
        "named_equation": "aux_59 + x20 + x19 = 0"
      },
      {
        "equation": "x63 + x33 + x31 = 0",
        "named_equation": "aux_63 + x33 + x31 = 0"
      },
      {
        "equation": "x65 + x27 + x21 = 0",
        "named_equation": "aux_65 + x27 + x21 = 0"
      },
      {
        "equation": "x66 + x30 + x28 = 0",
        "named_equation": "aux_66 + x30 + x28 = 0"
      },
      {
        "equation": "x67 + x36 + x34 = 0",
        "named_equation": "aux_67 + x36 + x34 = 0"
      },
      {
        "equation": "x68 + x39 + x37 = 0",
        "named_equation": "aux_68 + x39 + x37 = 0"
      },
      {
        "equation": "x72 + x43 + x40 = 0",
        "named_equation": "aux_72 + x43 + x40 = 0"
      },
      {
        "equation": "x74 + x45 + x44 = 0",
        "named_equation": "aux_74 + x45 + x44 = 0"
      },
      {
        "equation": "x75 + x73 + x1 = 0",
        "named_equation": "aux_75 + aux_73 + $personal_recommendation = 0"
      },
      {
        "equation": "x77 + x49 + x46 = 0",
        "named_equation": "aux_77 + x49 + x46 = 0"
      },
      {
        "equation": "x78 + x2 + x1 + x0 = 0",
        "named_equation": "aux_78 + $has_advising_permission + $personal_recommendation + ask about high risk investment = 0"
      },
      {
        "equation": "x79 + x8 + x7 + x6 = 0",
        "named_equation": "aux_79 + $hnw_excludes_residence_pension_insurance + $hnw_net_assets_over_250k + $hnw_income_over_100k = 0"
      },
      {
        "equation": "x80 + x12 + x11 + x10 = 0",
        "named_equation": "aux_80 + $client_claims_high_net_worth + block incentive + $incentive_offered = 0"
      },
      {
        "equation": "x81 + x16 + x15 + x13 = 0",
        "named_equation": "aux_81 + x16 + x15 + $client_is_certified_high_net_worth = 0"
      },
      {
        "equation": "x82 + x19 + x18 + x17 = 0",
        "named_equation": "aux_82 + x19 + x18 + x17 = 0"
      },
      {
        "equation": "x83 + x22 + x21 + x20 = 0",
        "named_equation": "aux_83 + $product_is_nmmi + x21 + x20 = 0"
      },
      {
        "equation": "x84 + x25 + x24 + x23 = 0",
        "named_equation": "aux_84 + $client_is_self_certified_sophisticated + $client_is_certified_sophisticated + $client_is_retail = 0"
      },
      {
        "equation": "x85 + x28 + x27 + x26 = 0",
        "named_equation": "aux_85 + x28 + x27 + $client_is_professional = 0"
      },
      {
        "equation": "x86 + x31 + x30 + x29 = 0",
        "named_equation": "aux_86 + x31 + x30 + $categorisation_verified = 0"
      },
      {
        "equation": "x87 + x34 + x33 + x32 = 0",
        "named_equation": "aux_87 + x34 + x33 + $risk_warning_given = 0"
      },
      {
        "equation": "x88 + x37 + x36 + x35 = 0",
        "named_equation": "aux_88 + x37 + x36 + $fscs_fos_loss_warning_given = 0"
      },
      {
        "equation": "x89 + x40 + x39 + x38 = 0",
        "named_equation": "aux_89 + x40 + x39 + $product_is_rmmi = 0"
      },
      {
        "equation": "x90 + x43 + x42 + x41 = 0",
        "named_equation": "aux_90 + x43 + $cooling_off_completed + $client_is_first_time_investor = 0"
      },
      {
        "equation": "x91 + x46 + x45 + x44 = 0",
        "named_equation": "aux_91 + x46 + x45 + x44 = 0"
      },
      {
        "equation": "x92 + x50 + x49 + x48 = 0",
        "named_equation": "aux_92 + x50 + x49 + x48 = 0"
      },
      {
        "equation": "x93 + x53 + x52 + x51 = 0",
        "named_equation": "aux_93 + aux_53 + aux_52 + respond with permitted high risk answer = 0"
      },
      {
        "equation": "x94 + x56 + x55 + x54 = 0",
        "named_equation": "aux_94 + aux_56 + aux_55 + aux_54 = 0"
      },
      {
        "equation": "x95 + x59 + x58 + x57 = 0",
        "named_equation": "aux_95 + aux_59 + aux_58 + aux_57 = 0"
      },
      {
        "equation": "x96 + x62 + x61 + x60 = 0",
        "named_equation": "aux_96 + aux_62 + aux_61 + aux_60 = 0"
      },
      {
        "equation": "x97 + x65 + x64 + x63 = 0",
        "named_equation": "aux_97 + aux_65 + aux_64 + aux_63 = 0"
      },
      {
        "equation": "x98 + x68 + x67 + x66 = 0",
        "named_equation": "aux_98 + aux_68 + aux_67 + aux_66 = 0"
      },
      {
        "equation": "x99 + x71 + x70 + x69 = 0",
        "named_equation": "aux_99 + aux_71 + aux_70 + aux_69 = 0"
      },
      {
        "equation": "x100 + x74 + x73 + x72 = 0",
        "named_equation": "aux_100 + aux_74 + aux_73 + aux_72 = 0"
      },
      {
        "equation": "x101 + x77 + x76 + x75 = 0",
        "named_equation": "aux_101 + aux_77 + aux_76 + aux_75 = 0"
      }
    ],
    "policy": {
      "file": "policy.co",
      "parse_diagnostics": 0,
      "sha256": "470bfaea5ca9297edde3c6f9dd1287ac090b0db94091edd9bf067c4d63c22ec5",
      "unroll_depth": []
    },
    "proof_log": {
      "checker": "frat-rs",
      "cnf_file": "phase0.cnf",
      "cnf_sha256": "18b942923ffcd94b37b605d01d273d395d623592765d16b17d4afc3b210d28fd",
      "elaborates_to": "lrat",
      "format": "frat",
      "frat_file": "phase0.frat",
      "frat_sha256": "db81a584c3de98ec584f350c80b518adddeb7aac52565886ca676b64753c9aff",
      "solver": "cryptominisat 5.11.21",
      "tbuddy": true
    },
    "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": []
    },
    "question": {
      "action": "respond with permitted high risk answer",
      "obligation_context": "risk_warning_given",
      "pins": [
        {
          "name": "respond with permitted high risk answer",
          "source": "action",
          "value": 1,
          "variable": 51
        },
        {
          "name": "risk_warning_given",
          "source": "obligation",
          "value": 0,
          "variable": 32
        },
        {
          "name": "product_is_nmmi",
          "source": "conditioning",
          "value": 1,
          "variable": 22
        }
      ]
    },
    "self_contained": false,
    "status": "proof_unsat",
    "steps_to_contradiction": 0
  },
  "certificate_detail": "full",
  "decided_by": "phase0-cdcl",
  "oracle_dependent": true,
  "origin_class": "external_proof",
  "phase0_verdict": "UNSAT, admitted (oracle_unsat_admissible is true), so this verdict is the oracle's assertion and not a derived refutation",
  "status": "UNSAT"
}
