Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 83 lines (75 sloc) 4.523 kb
4a53940 Initial version
eb authored
1 Name: ivor
75b1dab Added specialise option to pattern defs
eb authored
2 Version: 0.1.12
4a53940 Initial version
eb authored
3 Author: Edwin Brady
4 License: BSD3
5 License-file: LICENSE
491515a @gwern rearrange cabal fields
gwern authored
6 Author: Edwin Brady
7 Maintainer: Edwin Brady <eb@dcs.st-and.ac.uk>
4a53940 Initial version
eb authored
8 Homepage: http://www.dcs.st-and.ac.uk/~eb/Ivor/
82c30e6 @gwern +cabal metadata
gwern authored
9 Stability: experimental
e2cda23 Fixing conflicts, merging in gwern's patches
eb authored
10 Build-depends: base, haskell98, parsec, mtl, directory, containers
4a53940 Initial version
eb authored
11 Extensions: MultiParamTypeClasses, FunctionalDependencies,
12 ExistentialQuantification, OverlappingInstances
ec67c2c Record pattern match totality
eb authored
13 Category: Theorem provers, Dependent Types
82c30e6 @gwern +cabal metadata
gwern authored
14 Synopsis: Theorem proving library based on dependent type theory
384098f update cabal
eb authored
15 Description: Ivor is a type theory based theorem prover, with a
16 Haskell API, designed for easy extending and embedding
17 of theorem proving technology in Haskell
18 applications. It provides an implementation of the
19 type theory and tactics for building terms, more or
20 less along the lines of systems such as Coq or Agda,
21 and taking much of its inspiration from Conor
22 McBride's presentation of OLEG.
491515a @gwern rearrange cabal fields
gwern authored
23 .
384098f update cabal
eb authored
24 The API provides a collection of primitive tactics and
25 combinators for building new tactics. It is therefore
26 possible to build new tactics to suit specific
27 applications. Ivor features a dependent type theory
28 similar to Luo's ECC with definitions (and similar to
29 that implemented in Epigram), with dependent pattern
30 matching, and experimental multi-stage programming
31 support. Optionally, it can be extended with
8ea14a0 Sneakily changed version numbering
eb authored
32 heterogeneous equality, primitive types and operations,
384098f update cabal
eb authored
33 new parser rules, user defined tactics and (if you
34 want your proofs to be untrustworthy) a fixpoint
35 combinator.
491515a @gwern rearrange cabal fields
gwern authored
36
16c6321 @gwern goodness. That left all the docs and examples out
gwern authored
37 Data-files: BUGS, INSTALL, TODO, docs/macros.ltx, docs/local.ltx, docs/tt.tex, docs/conclusion.tex,
38 docs/intro.tex, docs/hcar.sty, docs/tactics.tex, docs/library.ltx,
39 docs/shell.tex, docs/dtp.bib, docs/HCAR.tex, docs/Makefile,
40 docs/combinators.tex, docs/humett.tex, docs/interface.tex,
41 papers/tutorial/tutorial.tex, papers/tutorial/macros.ltx, papers/tutorial/theoremproving.tex,
42 papers/tutorial/introduction.tex, papers/tutorial/hslibrary.tex, papers/tutorial/library.ltx,
43 papers/tutorial/programming.tex, papers/tutorial/Makefile, papers/bib/literature.bib,
44 papers/ivor/examples.tex, papers/ivor/code.tex, papers/ivor/macros.ltx,
45 papers/ivor/ivor.tex, papers/ivor/corett.tex, papers/ivor/conclusions.tex,
46 papers/ivor/intro.tex, papers/ivor/llncs.cls, papers/ivor/tactics.tex,
47 papers/ivor/library.ltx, papers/ivor/dtp.bib, papers/ivor/alink.bib,
48 papers/ivor/Makefile, papers/ivor/embounded.bib
49
50 Extra-source-files: emacs/ivor-mode.el, examplett/staged.tt, examplett/test.c, examplett/partial.tt, examplett/nat.tt,
51 examplett/vec.tt, examplett/lt.tt, examplett/Test.hs, examplett/plus.tt,
52 examplett/jmeq.tt, examplett/eq.tt, examplett/logic.tt, examplett/interp.tt,
53 examplett/stageplus.tt, examplett/Nat.hs, examplett/general.tt, examplett/natsimpl.tt,
54 examplett/test.tt, examplett/vect.tt, examplett/fin.tt, examplett/ack.tt,
55 IOvor/IOPrims.lhs, IOvor/Main.lhs, IOvor/iobasics.tt, Jones/Main.lhs,
56 lib/nat.tt, lib/lt.tt, lib/list.tt, lib/eq.tt,
57 lib/basics.tt, lib/logic.tt, lib/vect.tt, lib/fin.tt
58
59
60
975e1a8 Added some Data.Binary serialisation
eb authored
61 Build-depends: base >=3 && <5, parsec, mtl, directory, binary
491515a @gwern rearrange cabal fields
gwern authored
62 Build-type: Simple
63
82c30e6 @gwern +cabal metadata
gwern authored
64 Extensions: MultiParamTypeClasses, FunctionalDependencies,
203a435 Remove -fglasgow-exts
eb authored
65 ExistentialQuantification, OverlappingInstances,
66 TypeSynonymInstances, PatternGuards
491515a @gwern rearrange cabal fields
gwern authored
67 -- Needs some -Wall cleanup
68 -- GHC-options: -Wall
69
4a53940 Initial version
eb authored
70 Exposed-modules:
491515a @gwern rearrange cabal fields
gwern authored
71 Ivor.TT, Ivor.Shell, Ivor.Primitives,
8ec5e55 Added split tactic
eb authored
72 Ivor.TermParser, Ivor.ViewTerm, Ivor.Equality,
7c68bad Reinstated plugins
eb authored
73 Ivor.Plugin, Ivor.Construction
491515a @gwern rearrange cabal fields
gwern authored
74 Other-modules: Ivor.Nobby, Ivor.TTCore, Ivor.State,
2a5fab1 Started on new evaluator
eb authored
75 Ivor.Tactics, Ivor.Typecheck, Ivor.Evaluator
0ad8193 Lifted values into Ivor.Values
eb authored
76 Ivor.Gadgets, Ivor.SC, Ivor.Bytecode, Ivor.Values,
4a53940 Initial version
eb authored
77 Ivor.CodegenC, Ivor.Datatype, Ivor.Display,
78 Ivor.ICompile, Ivor.MakeData, Ivor.Unify,
79 Ivor.Grouper, Ivor.ShellParser, Ivor.Constant,
2f36338 Changed interface - TTM instead of Monad m
eb authored
80 Ivor.RunTT, Ivor.Compiler, Ivor.Prefix, Ivor.Errors,
337b24a Stared Overloading (not yet working...)
eb authored
81 Ivor.PatternDefs, Ivor.ShellState, Ivor.Scopecheck,
82 Ivor.Overloading
Something went wrong with that request. Please try again.