Theory MCP_Carrier
theory MCP_Carrier
imports
"Voblint_CLI.Analysis_Config"
"Voblint_CLI.Dispatch_Carrier"
"Voblint_Analysis_Sign.Sign_Analyses"
"Voblint_Analysis_Interval.Interval_Analyses"
"Voblint_Analysis_Parity.Parity_Analyses"
"Voblint_Analysis_Int.Int_Fixpoint_Analyses"
"Voblint_Analysis_Int.Int_Once_Analyses"
"Voblint_Analysis_Int.Int_Never_Analyses"
"Voblint_Analysis_Congruence.Congruence_Analyses"
"Voblint_Analysis_Relational.Rel_Order_Local"
"Voblint_CLI.MCP_Field"
begin
section ‹The combined state of the registered analyses›
text ‹
Every registered analysis owns one field of the combined state. This theory names
the analyses, lays out the fields, and states for each analysis how its field runs,
what it describes, how it reads back and answers queries, and where it starts.
Nothing here is proved beyond citing each analysis's own registration; the
combination and its soundness are in ‹MCP_Analyses›.
A new analysis adds a constructor to each datatype below, a field to the product
types, and one equation to each function that splits on the analysis.
›