remove_redundant
Removes assumptions and guarantees that are implied by other contract terms, returning the simplified contract and each removed term; terms with unfinished checks are kept.
Instructions
Drop the assumptions implied by the other assumptions, and the
guarantees implied by the assumptions and the other guarantees.
Returns the contract and the terms removed (removed: each term with
its part, and with core the terms that imply it); terms whose check did
not finish are kept and listed in unknown.
Choose synth by what the contract is for next. false (the default)
keeps A -> G: before the algebra and the checks (compose, refines,
verify, ...). true keeps realizability and the controllers: before
synthesis (is_realizable, synthesize, is_well_separated, is_vacuous);
a term is dropped only when it is implied in the GR(1) game, and each
removed term has its kind (init, safety, justice). With synth the terms
must be GR(1), and there is no context. The two differ only when the
assumptions are wrong (unsatisfiable, or constraining the outputs).
context: formulas that every behavior satisfies (e.g. an axiom of an
encoding, a physical law); the behaviors that violate them are left out.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"contract": "<contract>"
},
"name": "remove_redundant"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| core | No | ||
| synth | No | ||
| backend | No | auto | |
| context | No | ||
| timeout | No | ||
| contract | Yes |