schema_version = 1
law = "custom"
variant = "Custom"
natural_language = "A registered custom predicate must accept every generated witness for the operation."
mathematical_statement = "forall args . check(f, args) = true"
preconditions = ["check is registered", "arity matches the operation signature"]
postcondition = "check(f, args) == true"
citation = "SPEC.md#algebraic-laws"
[[variables]]
name = "args"
type = "u32-list"
role = "input"
[[parameters]]
name = "check"
type = "LawCheckFn"
source = "AlgebraicLaw::Custom.check"
[[parameters]]
name = "arity"
type = "usize"
source = "AlgebraicLaw::Custom.arity"