forked from MetaCoq/metacoq
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Added the ability to reflect Inductive definitions (#32)
* started work on reflecting inductive definitions. Just created a new vernac command "Make Inductive". As of now, it does nothing. Tested the dummy command in demo.v * The command can now declare an empty inductive of a give name. The body is ignored for now. Tested this part in demo.v * documented a bug in unquoting. It incorrectly changes Prop to Set. * preliminary work on transparentification. * Defined kernel's representation of inductive datatypes. * started populating the inductive entries properly. The name and arity are obtained properly populated. However the resultant definition changes arity from Set to Prop. * bugfix : Prop and Set were switched * unable to construct the type of constructors. error. * successfully reflected an inductive type : bool Found the correct input by snooping on the paramcoq plugin (using coq/dev/top_printer.ml) Also, needed to recompile coq so that top_printer.ml gets included in coqtop/coqc: coq/dev$ echo "Top_printer" > printer.mllib then add dev/printer.cma to $CORECMA in coq/Makefile.common * unquoted params, tested mutual and parametrized inductives. * cleaned up the demo * more cleanup for PR * clearnup for PR * removed the unused argument (name) in Make Inductive * exported all members of mutual entry, except universe contexts * properly unquoted mind_entry_record * properly unquoted mind_entry_finite * properly unquoted mind_private * Make Inductive does reduction
- Loading branch information
Showing
3 changed files
with
219 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters