IP Consulting — Actuariat · Modélisation
    /
    All services
    Solution · Actuarial model modernisation

    Move the model. Keep the evidence.

    Rebuild spreadsheet and legacy-platform models in Python while proving, step by step, that the original behaviour survived. AI accelerates construction; a deterministic harness decides whether it matches.

    Inspect the public harness

    Results from the public migration-harness demonstration.

    37
    stress scenarios
    22,570
    declared comparisons
    1e-9
    comparison tolerance
    0
    failed checks
    The migration risk

    A clean rewrite can silently change the model

    Why this matters

    The usual rewrite changes language, structure and performance at the same time. When an output moves, the gap has no clear owner.

    Spot-checking totals is not enough: compensating errors can agree at the end while intermediate logic has drifted. A regulated model needs a reproducible basis for the claim that nothing changed.

    Faithful-first changes one variable at a time and re-proves equivalence before optimisation begins.
    The controlled method

    Every gap gets an owner

    The harness turns migration into a sequence of comprehension, construction and acceptance gates.

    How the work runs
    01

    Census the source

    Map every formula and calculation node, including unused and dead calculations.

    02

    Freeze the oracle

    Extract golden values mechanically from the original model with engine, scenario and period recorded.

    03

    Test comprehension

    Write a source-cited specification, then ask a fresh agent to predict intermediate values without seeing the answers.

    04

    Build faithfully

    Reproduce behaviour in portable Python before restructuring or optimising the implementation.

    05

    Stress the branches

    Exercise table boundaries, switches, partial years, negative rates and original error propagation.

    06

    Gate acceptance

    Block completion until every declared comparison passes and each deviation or override is recorded.

    What the harness records

    A dossier, not a reconciliation memo

    The evidence survives the build session and can be reviewed independently.

    Reviewable evidence

    Source-to-module traceability

    Specifications and implementation point back to the source cells and rules they reproduce.

    Pairwise equivalence

    Every scenario and intermediate result is compared against its declared oracle value.

    Error fidelity

    An original #N/A remains an #N/A; returning a polite zero is treated as a failure.

    Rebuild reproducibility

    A second implementation can be run from the same specifications and judged by the same suite.

    Claim boundary

    Equivalent does not mean correct

    The process proves that the Python model is equivalent to the source model as computed, under the named engine, scenarios and declared tolerance. It does not prove that the original actuarial assumptions or logic were appropriate.

    What this does not claim
    Source-model defects may be reproduced faithfully.
    Tolerance changes require explicit actuarial approval.
    Optimisation begins only after the faithful baseline passes.
    Typical deliverables

    What the engagement leaves behind

    Engagement output
    Source-model census and logic map
    Golden-value oracle and run manifest
    Source-cited module specifications
    Portable Python implementation and test suite
    Equivalence dashboard and deviation register
    Actuarial review and sign-off dossier
    Questions before a migration

    What stakeholders usually need resolved

    Questions & boundaries
    Why prove equivalence before improving the model?

    Changing logic and architecture at the same time makes deviations hard to attribute. A faithful baseline gives optimisation a stable reference and lets each later change be reviewed on its own merits.

    Does the migration depend on AI?

    No. AI can accelerate inventory, specification and implementation, but the acceptance decision comes from deterministic comparisons, declared tolerances and actuarial review.

    What does a passing equivalence suite actually prove?

    It proves that the target reproduced the source outputs for the named engine, scenarios, checkpoints and tolerance. It does not validate the source model's assumptions or claim equivalence outside that boundary.

    What is needed to start?

    A source-model inventory, representative inputs, authoritative outputs, the target environment and access to people who can resolve intentional behaviour, known defects and judgmental rules.

    Working on a migration where “prove nothing changed” has to mean prove it?

    Start with the source model, the target platform and the evidence your reviewers will need.

    View the open-source demonstration