package coq-core
Module Firstorder_plugin.FormulaSource
Source
val (==?) :
('a -> 'a -> 'b -> 'b -> int) ->
('c -> 'c -> int) ->
'a ->
'a ->
'b ->
'b ->
'c ->
'c ->
intSource
val ind_hyps :
Environ.env ->
Evd.evar_map ->
int ->
Constr.pinductive ->
EConstr.constr list ->
EConstr.rel_context arraySource
type right_pattern = | Rarrow| Rand| Ror| Rfalse| Rforall| Rexists of Constr.metavariable * EConstr.constr * bool
Source
type left_arrow_pattern = | LLatom| LLfalse of Constr.pinductive * EConstr.constr list| LLand of Constr.pinductive * EConstr.constr list| LLor of Constr.pinductive * EConstr.constr list| LLforall of EConstr.constr| LLexists of Constr.pinductive * EConstr.constr list| LLarrow of EConstr.constr * EConstr.constr * EConstr.constr
Source
type left_pattern = | Lfalse| Land of Constr.pinductive| Lor of Constr.pinductive| Lforall of Constr.metavariable * EConstr.constr * bool| Lexists of Constr.pinductive| LA of EConstr.constr * left_arrow_pattern
Source
type _ identifier = | GoalId : [ `Goal ] identifier| FormulaId : Names.GlobRef.t -> [ `Hyp ] identifier
Source
type _ pattern = | LeftPattern : left_pattern -> [ `Hyp ] pattern| RightPattern : right_pattern -> [ `Goal ] pattern
Source
type 'a t = private {id : 'a identifier;constr : EConstr.constr;pat : 'a pattern;atoms : atoms;
}Source
val build_formula :
flags:flags ->
Environ.env ->
Evd.evar_map ->
'a side ->
'a identifier ->
EConstr.types ->
counter ->
('a t, atom) sum