Polynomial.ProofFormatSourceProof format used by the proof-generating procedures. It is fairly close to Rocq format but a bit more liberal.
It is used for proofs over Z, Q, R. However, certain constructions e.g. CutPrf are only relevant for Z.
type prf_rule = | Annot of string * prf_rule| Hyp of int| Def of int| Ref of int| Cst of Micromega_core_plugin.NumCompat.Q.t| Zero| Square of Vect.t| MulC of Vect.t * prf_rule| Gcd of Micromega_core_plugin.NumCompat.Z.t * prf_rule| MulPrf of prf_rule * prf_rule| AddPrf of prf_rule * prf_rule| CutPrf of prf_rule| LetPrf of prf_rule * prf_ruleval cmpl_prf_rule :
('a Micromega_core_plugin.Micromega.pExpr ->
'a Micromega_core_plugin.Micromega.pol) ->
(Micromega_core_plugin.NumCompat.Q.t -> 'a) ->
Env.t ->
prf_rule ->
'a Micromega_core_plugin.Micromega.psatz