package rocq-runtime
The Rocq Prover -- Core Binaries and Tools
Install
Dune Dependency
Authors
Maintainers
Sources
rocq-9.0.0.tar.gz
md5=8d522602d23e7a665631826dab9aa92b
sha512=f4f76a6a178e421c99ee7a331a2fd97a06e9c5d0168d7e60c44e3820d8e1a124370ea104ad90c7f87a9a1e9d87b2d0d7d2d387c998feeaed4a75ed04e176a4be
doc/rocq-runtime.pretyping/Reductionops/Stack/index.html
Module Reductionops.Stack
Source
Source
val mkCaseStk :
(Constr.case_info
* EConstr.EInstance.t
* EConstr.t array
* EConstr.case_return
* EConstr.t Constr.pcase_invert
* EConstr.case_branch array) ->
case_stk
Source
type member =
| App of app_node
| Case of case_stk
| Proj of Names.Projection.t * EConstr.ERelevance.t
| Fix of EConstr.fixpoint * t
| Primitive of CPrimitives.t * Names.Constant.t * EConstr.EInstance.t * t * CPrimitives.args_red
fold2 f x sk1 sk2
folds f
on any pair of term in (sk1,sk2)
.
append_app args sk
pushes array of arguments args
on sk
append_app_list args sk
pushes list of arguments args
on sk
if strip_app sk
= (sk1,sk2)
, then sk = sk1 @ sk2
with sk1
purely applicative and sk2
does not start with an argument
decomp sk
extracts the first argument of reversed stack sk
is there is some
list_of_app_stack sk
either returns Some sk
turned into a list of arguments if sk
is purely applicative and None
otherwise
args_size sk
returns the number of arguments available at the head of sk
zip sigma t sk
Source
val expand_case :
Environ.env ->
Evd.evar_map ->
case_stk ->
Constr.case_info
* EConstr.EInstance.t
* EConstr.constr array
* ((EConstr.rel_context * EConstr.constr) * EConstr.ERelevance.t)
* (EConstr.rel_context * EConstr.constr) array
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>