Commit Graph

107 Commits

Author SHA1 Message Date
William J. Bowman
bfc72d8fd3
Documented reflection features 2015-09-22 18:18:26 -04:00
William J. Bowman
41b40fea2b
Commented out things that cause package to fail
Lots of tests and examples cause the package to fail to build. These
have been commented out until they can be fixed.
2015-09-22 15:32:54 -04:00
William J. Bowman
a3094b55bb
Fixed top 2015-09-22 15:32:45 -04:00
William J. Bowman
722ac7d68f
Added missing dependency 2015-09-22 15:30:00 -04:00
William J. Bowman
f73f4a2c98
Finished documenting curnel forms 2015-09-22 15:29:49 -04:00
William J. Bowman
8681282ef9
Added top-interactive support/fixed top-level eval
Also fixed some random stylistic things
2015-09-22 14:06:03 -04:00
William J. Bowman
0f5026aee0
Fixed typo 2015-09-16 19:54:16 -04:00
William J. Bowman
a9e042967e
More work on docs 2015-09-16 19:54:06 -04:00
William J. Bowman
a787f974da
Starting scribbling 2015-09-16 16:05:29 -04:00
William J. Bowman
56abd36a65
Added disclaimer 2015-09-16 12:44:56 -04:00
William J. Bowman
3b5aafdf69
Updated install instructions 2015-09-16 12:41:54 -04:00
William J. Bowman
1e3994d388
Added redex-lib dep and install instructions 2015-09-16 12:37:47 -04:00
William J. Bowman
740aaee756
cur is now a pkg and a #lang
These features are currently undocumented.
2015-09-16 12:25:22 -04:00
William J. Bowman
34dd749be0
Updates to the README 2015-09-15 19:00:00 -04:00
William J. Bowman
2796cba6fb
Moved all examples to own sub-directory 2015-09-15 18:58:32 -04:00
William J. Bowman
23c1b56065
Knocked off a bunch of TODOs
* Removed some TODOs that were already completed
* Added cur-match, to abstract the common (syntax-parse (cur-expand syn) ...)
  pattern
2015-09-15 18:53:53 -04:00
William J. Bowman
3ce14c3871
Refactored core
Moved all curnel code into curnel/, and split the two kernel modules
into separate files. Now the trusted core and the module/#lang stuff are
in separate files. The #lang is now reprovided by "cur.rkt", which
should also provide core agnostic sugar.
2015-09-15 18:02:36 -04:00
William J. Bowman
a29940ec69
Cleaned up typeclass code a little 2015-09-15 17:20:37 -04:00
William J. Bowman
5fec16125d
Updated LICENSE to BSD 2-clause 2015-09-15 16:12:15 -04:00
William J. Bowman
31603bf109
Cleaned up tactic base system
* Various style fixes
* Standardize the proof state interface/naming a little.
* Reorganized base.rkt; now easier to read
* Fixed some mismatch code/documentation
* Renamed "basic" to "standard"; basic was too close to base, and not
  really helpful.
2015-09-15 16:02:53 -04:00
William J. Bowman
13d3016c85
Fixed order in which tactic scripts are printed 2015-09-13 18:57:01 -04:00
William J. Bowman
1bb886cfbb
Introduced Sartactics!
* Added the Sartactics library, provides a sassy wrapper around the basic
  tactics.
* Added prefix-in, although it probably only works for macros
* Better syntax for define-tactic
2015-09-11 17:20:53 -04:00
William J. Bowman
f2278696b5
Refactored tactics
Refactored tactics and corrected several bugs with how tactics, modules, and environments play together.
2015-09-11 15:11:06 -04:00
William J. Bowman
d1c9b4d21c
Interactive tactics work, and more!
* Completed interactive tactics, and removed uses of eval.
* Fixed bug in intros
* Added forget tactic (untested).
2015-09-11 11:43:22 -04:00
William J. Bowman
678607afa0 Working on interactive tactic
Currently, due to multiple uses of eval, can't get this to work. Need to
redesign/reorganize tactics
2015-09-10 19:24:32 -04:00
William J. Bowman
2609cf0b08 Cleaned up tactic code, added new tactics 2015-09-10 14:03:58 -04:00
William J. Bowman
f90ce34d53 Removed CIC from README 2015-09-09 18:53:35 -04:00
William J. Bowman
e40f0f0a7c Merge branch 'tactics' 2015-09-09 18:50:29 -04:00
William J. Bowman
9265431475 Tactics complete! after many hacks 2015-09-09 18:50:11 -04:00
William J. Bowman
07c36c9c2d Type classes are easy 2015-09-09 17:54:44 -04:00
William J. Bowman
32c824ca30 More work on tactics, TODOs added to curnel 2015-08-27 18:29:58 -04:00
William J. Bowman
3d441907f5 Started on design of tactic system for Cur 2015-08-20 18:10:57 -04:00
William J. Bowman
13d6a6c241 Added LICENSE 2015-04-17 02:11:47 -04:00
William J. Bowman
063af1fd82 Fixed typo in README 2015-04-15 22:57:48 -04:00
William J. Bowman
61bdf8f5d4 Proper names and inductive families
These fixes are merged because properly testing the latter requires
having the former, while properly implementing the former is made
simpler by having the latter.

Fixed handling of names/substitution
===
* Added capture-avoiding substitution. Closes #7
* Added equivalence during typing checking, including α-equivalence and
  limited β-equivalence. Closes #8
* Exposed better typing-check reflection features to allow typing
  checking modulo equivalence.
* Tweaked QED macro to use new type-checking reflection feature.

Fixed inductive families
===
The implementation of inductive families is now based on the theoretical
models of inductive families, rather than an ad-hoc non-dependent
pattern matcher.

* Removed case and fix from Cur and Curnel. They are replaced by elim,
  the generic eliminator for inductive families. Closes #5. Since fix is
  no more, also closes #2.
* Elimination of false works! Closes #4.
* Changed uses of case to elim in Curnel
* Changed uses of case* in Cur to use eliminators. Breaks case* API.
* Fixed Coq generator to use eliminators
* Fixed Latex generator
2015-04-14 19:16:47 -04:00
William J. Bowman
ba9bf0ee2b Fixed some broken comments 2015-03-24 20:13:42 -04:00
William J. Bowman
a468890817 Reduced complexity of substitution 2015-03-24 20:11:18 -04:00
William J. Bowman
807c4d7851 Added Type shorthand for tests 2015-03-23 17:39:02 -04:00
William J. Bowman
2ddf7ce352 Fixed several bugs, found several more
Trying to fix proofs for free examples; found several bugs but more
still exist. Added TODOs
2015-02-20 19:12:06 -05:00
William J. Bowman
6b0d09c7d9 Redex 1.6 enables caching of judgment forms!
* Judgment form caching enables running test suite in seconds instead of
  days.
* Fixed numerous bugs after properly exercising the oll/stlc examples.
2015-02-20 18:22:04 -05:00
William J. Bowman
b3388c5413 Changed Type to Unv 0
* Type should be not be in the core language. Converted all uses of Type
  to Unv 0, potentially fixing a universe bug in the process.
* Added macro Type to Curnel that enables existing code to work more or
  less as before.
2015-02-20 18:20:55 -05:00
William J. Bowman
38c1ac928a Cleaning up dead code 2015-02-20 09:55:35 -05:00
William J. Bowman
b2afc8f9d9 Bug fixes 2015-02-15 21:25:39 -05:00
William J. Bowman
410ee11cbe Fixed typo 2015-02-06 01:05:26 -05:00
William J. Bowman
af0b1a908f Fixed duplicate literal in syntax-parse 2015-02-05 12:35:44 -05:00
William J. Bowman
efcf8c1f97 Typo fixes 2015-02-05 02:39:25 -05:00
William J. Bowman
51972880b3 Note about the core, various fixes 2015-02-05 02:34:15 -05:00
William J. Bowman
027f031b20 Added some pointers about what to look at 2015-02-05 02:32:50 -05:00
William J. Bowman
b13bf6471d Fixed various typos/bug, added latex generation 2015-02-05 01:40:58 -05:00
William J. Bowman
448ee8a83a Added support for generating theorems,proofs,defs
* cur-expand can now accept additional stop identifiers.
* Coq generator can now generate theorems, proofs, and definitions.
2015-02-04 20:30:24 -05:00