Skip to content

Optimal satisfaction algorithm is not modelled #2

@dgpv

Description

@dgpv

Early version of the spec had malleable_sat/malleable_dsat and has_sig properties on nodes, but they were specified without full understanding of the satisfaction algorithm, were not correct, and were removed.

It still might be useful to have a specification for the non-malleable satisfaction algorithm. The spec already models instances for valid/empty sigs, correct/wrong preimages, and zero/one witnesses, and models sat/dsat. Would the non-malleable satisfaction algorithm be modelled, an implementations would be able to check against the spec for correctness of their algorithm.

It might make sense to model the algorithm as a separate spec that would import the main spec via open miniscript. Modelling satisfaction algorithm will make the overall model more complex, and therefore it will take more time to check. Having the basic model small will be cheaper. On the other hand, if we have a spec that would correctly detect malleability and has_sig run-time properties, we could check them against s,e,f type modifiers and increase confidence in the consistency of the spec

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions