]> matita.cs.unibo.it Git - helm.git/log
helm.git
14 years agoPersistent db (to lookup names in the library) inefficiently implemented as
Claudio Sacerdoti Coen [Fri, 19 Jun 2009 14:05:18 +0000 (14:05 +0000)]
Persistent db (to lookup names in the library) inefficiently implemented as
an associative list which is:

 1) loaded from disk and stored in memory when matita starts
 2) updated every time a file is saved

Still to be implemented: decompilation.

14 years agoNG decompilation is now activated. However, it is called from the old
Claudio Sacerdoti Coen [Fri, 19 Jun 2009 12:42:05 +0000 (12:42 +0000)]
NG decompilation is now activated. However, it is called from the old
decompilation that cannot detect when a NG-only file A is used by another
NG-only file B. As a consequence, decompiling A does not decompile B too.

14 years agoEstatus finally merged into the global status using inheritance.
Claudio Sacerdoti Coen [Fri, 19 Jun 2009 10:16:23 +0000 (10:16 +0000)]
Estatus finally merged into the global status using inheritance.
Major code simplification everywhere :-)

14 years agoUseless GrafiteTypes.get_baseuri removed.
Claudio Sacerdoti Coen [Fri, 19 Jun 2009 08:40:48 +0000 (08:40 +0000)]
Useless GrafiteTypes.get_baseuri removed.

14 years agoMore statuses converted to objects.
Claudio Sacerdoti Coen [Fri, 19 Jun 2009 08:34:19 +0000 (08:34 +0000)]
More statuses converted to objects.

14 years agoGood:
Claudio Sacerdoti Coen [Fri, 19 Jun 2009 07:21:49 +0000 (07:21 +0000)]
Good:
1) all set_* methods are now polymorphic
2) no more :> coercions
3) no more technical class types

Bad:
1) some polymorphic set_* methods have explicit row types that are
   problematic when extending another class in another file. The
   row types should just be #classname, but ocaml rejects them that
   way.

14 years agodebug pps removed
Enrico Tassi [Thu, 18 Jun 2009 17:26:41 +0000 (17:26 +0000)]
debug pps removed

14 years agobetter exception handling
Enrico Tassi [Thu, 18 Jun 2009 17:26:27 +0000 (17:26 +0000)]
better exception handling

14 years agoproof patching!
Enrico Tassi [Thu, 18 Jun 2009 16:58:39 +0000 (16:58 +0000)]
proof patching!

14 years agoObjects are now used to represent also the tactic status.
Claudio Sacerdoti Coen [Thu, 18 Jun 2009 16:48:35 +0000 (16:48 +0000)]
Objects are now used to represent also the tactic status.
Cool (but error messages can be bad).

14 years agoAdded ntry and nassumption tactics
denes [Thu, 18 Jun 2009 15:26:24 +0000 (15:26 +0000)]
Added ntry and nassumption tactics

14 years agocallbacks were taking in input a status bu were not using them.
Enrico Tassi [Thu, 18 Jun 2009 14:46:17 +0000 (14:46 +0000)]
callbacks were taking in input a status bu were not using them.
thanks to the new #type for statuses this was a problem, and Obj.magic
was required to fix them. Removed both the dummy parameter and the
unsafe cast

14 years agoFixed stupid path
denes [Thu, 18 Jun 2009 11:43:51 +0000 (11:43 +0000)]
Fixed stupid path

14 years agoAdded script useful for running benchmarks
denes [Thu, 18 Jun 2009 11:23:18 +0000 (11:23 +0000)]
Added script useful for running benchmarks

14 years agoChanged parenthesis to optional around letin ident (and type)
denes [Thu, 18 Jun 2009 11:01:08 +0000 (11:01 +0000)]
Changed parenthesis to optional around letin ident (and type)

14 years agoFixed wrong types in proof terms
denes [Thu, 18 Jun 2009 10:59:22 +0000 (10:59 +0000)]
Fixed wrong types in proof terms

14 years agoStricter type: the type now shows that disambiguation only alter the lexicon.
Claudio Sacerdoti Coen [Thu, 18 Jun 2009 09:17:53 +0000 (09:17 +0000)]
Stricter type: the type now shows that disambiguation only alter the lexicon.
In this way we are forced to manually set the content of the object in place of
setting the whole object, that leads to information loss since in the meanwhile
new commands may have altered the rest of the state.

14 years ago1) grafiteWalker removed
Claudio Sacerdoti Coen [Thu, 18 Jun 2009 09:07:37 +0000 (09:07 +0000)]
1) grafiteWalker removed
2) ncommands and commands are now two distinct syntactic entries
3) NEstatus.status and LexiconEngine.status are now objects

14 years agoproof reconstruction almost OK
Enrico Tassi [Wed, 17 Jun 2009 13:35:12 +0000 (13:35 +0000)]
proof reconstruction almost OK

14 years agoInitial implementation of statuses using objects in place of nested records.
Claudio Sacerdoti Coen [Wed, 17 Jun 2009 11:47:59 +0000 (11:47 +0000)]
Initial implementation of statuses using objects in place of nested records.
So nicer!

The only major problem is that the NCicLibrary functor does not return a
function #status as 'status -> 'status, but a function status -> status.
Thus I have to painfully wrap NCicLibrary.Realizer(...).require in NRstatus.

TO REMEMBER:
- every function that works on a data type that used to be put in the status
  (e.g. a db) must now work on a functional class with just two members
  (db and set_db). Moreover, every function in the module must work on the
  open variants of the class type, i.e. #status

14 years agoAdded optionnal one pass simplification (instead of keep_simplified)
denes [Wed, 17 Jun 2009 08:47:34 +0000 (08:47 +0000)]
Added optionnal one pass simplification (instead of keep_simplified)
Fix for varlists (we traverse the term to collect occuring variables)

14 years agofirst proof reconstruction attempt, still bugged since it
Enrico Tassi [Tue, 16 Jun 2009 23:07:35 +0000 (23:07 +0000)]
first proof reconstruction attempt, still bugged since it
does all steps in a forward fashion

14 years ago1) unification hint now takes NG terms (as it should have been from the very
Claudio Sacerdoti Coen [Tue, 16 Jun 2009 23:00:56 +0000 (23:00 +0000)]
1) unification hint now takes NG terms (as it should have been from the very
   beginning)
2) refresh_uris_in_term is now passed to the constructor of the
   existential/universal data type in NCicLibrary
3) URIs are now refreshed in unification hint data

14 years ago1) NCicLibrary (which is untrusted) moved after NCicUntrusted.
Claudio Sacerdoti Coen [Tue, 16 Jun 2009 22:35:03 +0000 (22:35 +0000)]
1) NCicLibrary (which is untrusted) moved after NCicUntrusted.
   NCicLibrary registers get_obj to NCicEnvironemnt (and to NCicPp)
2) URIs are now refreshed when objects are included from disk

Observation: even NCicPp is untrusted. Thus its implementation should be put
at the end and some references set to one early module. Which one? Two
choices: NCic or NCicPp (two modules, one with the implementation follows).
Could the same be done for NCicLibrary too in order to bring back the explicit
dependency of NCicEnvironment over NCicLibrary? [ In that case, remember to
change back the exception caught by GrafiteDisambiguate ]

14 years agoImplementation of existential type improved (more strict checking).
Claudio Sacerdoti Coen [Tue, 16 Jun 2009 21:58:28 +0000 (21:58 +0000)]
Implementation of existential type improved (more strict checking).

14 years agoavoid fixing non-recursive terms
Enrico Tassi [Tue, 16 Jun 2009 21:57:36 +0000 (21:57 +0000)]
avoid fixing non-recursive terms

14 years agowe fix recursive object reference with the correct height
Enrico Tassi [Tue, 16 Jun 2009 18:28:17 +0000 (18:28 +0000)]
we fix recursive object reference with the correct height
just before adding it to the library

14 years agoFIX OF THE PREVIOUS EXPERIMENTAL COMMIT:
Claudio Sacerdoti Coen [Tue, 16 Jun 2009 17:37:05 +0000 (17:37 +0000)]
FIX OF THE PREVIOUS EXPERIMENTAL COMMIT:

Instead of serializing closures (of type status -> status), we now
serialize data. This is achieved by implementing an existential type

       NCicLibrary.Serializer(struct type status end).obj

whose semantics is "\exists 'a. 'a -> status -> status"
and by putting in the dump a list of these existential types.

The current implementation is the type-unsafe one based internally on Obj.magic.
However, the interface is (should be?) type-safe.
Other type-safe implementations could be derived by the ocaml m.l. thread on
existential types. In particular, I remember implementations via:
  - references
  - functors
  - exceptions
  - impredicative encoding via polymorphic methods

This fix allow to change the Matita code without invalidating the library.

(Critical) things still to be done:
 - decompilation
 - refreshment of URIs

14 years agowe corrected some reduction bugs about renaming.
Ferruccio Guidi [Tue, 16 Jun 2009 14:20:34 +0000 (14:20 +0000)]
we corrected some reduction bugs about renaming.

The grundlagen is now fully typechecked :)

14 years agowe removed some old code and fixed a reduction bug: two instances fo the
Ferruccio Guidi [Mon, 15 Jun 2009 21:15:57 +0000 (21:15 +0000)]
we removed some old code and fixed a reduction bug: two instances fo the
same constant applied to a different number of arguments may be convertible

We now check grundlagen up to item 109 :) (with naive sort inclusion :( puah)

14 years agoEXPERIMENTAL COMMIT (part B, by CSC :-):
Enrico Tassi [Mon, 15 Jun 2009 16:41:47 +0000 (16:41 +0000)]
EXPERIMENTAL COMMIT (part B, by CSC :-):
 - objects are now individually serialized too
   (but never decompiled)

CRITICAL OBSERVATION:
 - closures in ocaml are pointers in the binary, hence the library
   must be decompiled at every single change in matita's code

14 years agoEXPERIMENTAL COMMIT (by CSC,actuall :-)
Enrico Tassi [Mon, 15 Jun 2009 16:22:18 +0000 (16:22 +0000)]
EXPERIMENTAL COMMIT (by CSC,actuall :-)
This commit partially implements (in NCicLibrary) serialization for NG.
It creates several .matita/matita/.../foo.ng files that are ocaml dumps
of closures (NRstatus.refiner_status -> NRstatus.refiner_status) to be applied
to the current status.

The test tests/ng_includeB.ma shows how unification hints are preserved.

TODO:
 a) decompilation is implemented in NCicLibrary, but not called anywhere
 b) serialization of objects (and "query" db (and old to new cache??)) not
    implemented yet
 c) objects are removed from the library, but not from the environment!

14 years ago...
Enrico Tassi [Mon, 15 Jun 2009 11:18:02 +0000 (11:18 +0000)]
...

14 years agoadded TODO list
Enrico Tassi [Mon, 15 Jun 2009 11:14:48 +0000 (11:14 +0000)]
added TODO list

14 years agohuge commit regarding the grafite_status:
Enrico Tassi [Mon, 15 Jun 2009 11:04:24 +0000 (11:04 +0000)]
huge commit regarding the grafite_status:
- in the ng_status component it embeds the lexicon status
- the lexicon status is not passed around alone anymore
- coercions/hints for the ng system are no longer imperative
  (are in the e (for external) status of the tac_status
- ng_refiner does not take in input a look_for_coercions function
  but an aggregate type "rdb" comprising hints and coercions
  (and empty one is passed to disable hints/coercions)
functionalities losses:
- old (generated) hint are no longer translated on the fly
- old coercions are translated in a best effort way
  (no universes calculation)

14 years agopart of last commit
Enrico Tassi [Mon, 15 Jun 2009 09:41:44 +0000 (09:41 +0000)]
part of last commit

14 years agotacticals are really tactics now, they have an AST at the same level of
Enrico Tassi [Mon, 15 Jun 2009 09:36:46 +0000 (09:36 +0000)]
tacticals are really tactics now, they have an AST at the same level of
tactics. Parser/engine fixed accordingly. This allowed a better TPTP
exportation

14 years agowe removed some coercion detours and we added some coercions we really would like...
Ferruccio Guidi [Sat, 13 Jun 2009 19:00:52 +0000 (19:00 +0000)]
we removed some coercion detours and we added some coercions we really would like to see

14 years agoImplemented keep_simplified.
denes [Fri, 12 Jun 2009 16:16:11 +0000 (16:16 +0000)]
Implemented keep_simplified.
If a candidate for forward inference is discarded, another is selected

14 years agoocaml sucks...
Claudio Sacerdoti Coen [Fri, 12 Jun 2009 13:46:40 +0000 (13:46 +0000)]
ocaml sucks...

14 years ago...
Claudio Sacerdoti Coen [Fri, 12 Jun 2009 13:07:00 +0000 (13:07 +0000)]
...

14 years ago-ng implemented
Enrico Tassi [Fri, 12 Jun 2009 13:04:13 +0000 (13:04 +0000)]
-ng implemented

14 years agoAdded a new keep_simplified function
Andrea Asperti [Fri, 12 Jun 2009 12:33:45 +0000 (12:33 +0000)]
Added a new keep_simplified function

14 years agoRenamed forward_simplify into simplify and backward_simplify
Andrea Asperti [Fri, 12 Jun 2009 11:21:13 +0000 (11:21 +0000)]
Renamed forward_simplify into simplify and backward_simplify
into simplify_goal

14 years agoActive goals are now demodulated after selecting a positive clause.
denes [Thu, 11 Jun 2009 22:52:38 +0000 (22:52 +0000)]
Active goals are now demodulated after selecting a positive clause.
Implemented OrderedSet for passive clauses.
Selection is now based on weight (fairness condition to be added).

14 years ago- applyTransformation: bugfix in the rendering of records
Ferruccio Guidi [Thu, 11 Jun 2009 22:02:51 +0000 (22:02 +0000)]
- applyTransformation: bugfix in the rendering of records

now algebra/monoids.ma is fully reconstructed :)

14 years agocontent2pres for the new cic fixed
Enrico Tassi [Thu, 11 Jun 2009 13:57:41 +0000 (13:57 +0000)]
content2pres for the new cic fixed

14 years ago- some depend files fixed
Ferruccio Guidi [Thu, 11 Jun 2009 12:59:35 +0000 (12:59 +0000)]
- some depend files fixed
- matitacLib: we peform a garbage collection after compiling every file instead of just .mma (let's see the times)
- transcript: support for "cr" inline param completed
- procedural: now record are supported

the records of logic/cprop_coonectives.ma are now reconstructed :)

logic higher_order_defs list nat Z Q are now fully reconstructed :))

14 years ago- library/list/list.ma: unused code commented
Ferruccio Guidi [Wed, 10 Jun 2009 20:19:42 +0000 (20:19 +0000)]
- library/list/list.ma: unused code commented
- proceduralClassify type argument are no longer critical: let's see how it goes
- acic2Procedural: the inline parameter Debug now works
- procedural2: we remove the conversions before first order relexivities (exp. to avoid conversion to []=[] in list/list.ma [does not work because []=[] in an open term since the equality type is unspecified]). so we we strengthen reflexivity (see below)
- setoids: now reflexivity is retried after whd if it fails in the first place.
- grafiteAst: detection of convertible rewrites is now optional and activated with the inline parameter "cr". nat/factorial2 is very slow without rewrites
transcript: we now avoid the generation of dupplicated inlines (mistakely generated by the grafite parser [this can not be avoided without a better syntax for .ma scripts])

now list/list.ma is fully reconstructed :)

nat/factorial2.ma takes long to be produced 22m31. Some conversion is slowing the process. nat/bertrand.ma also: we are waiting for it now :(

14 years ago1) added simplification of actives w.r.t. selected
Enrico Tassi [Wed, 10 Jun 2009 16:43:48 +0000 (16:43 +0000)]
1) added simplification of actives w.r.t. selected
2) added simple main loop (look at the comment for a possible optimization)

14 years agoright inference step completed
Enrico Tassi [Wed, 10 Jun 2009 13:38:08 +0000 (13:38 +0000)]
right inference step completed

14 years agonew function filter_map_acc
Enrico Tassi [Wed, 10 Jun 2009 11:39:26 +0000 (11:39 +0000)]
new function filter_map_acc

14 years agoExtended the equality case to non ground terms
denes [Wed, 10 Jun 2009 08:46:55 +0000 (08:46 +0000)]
Extended the equality case to non ground terms

14 years ago- Procedural: more support for the Debug inline option (does not work yet)
Ferruccio Guidi [Tue, 9 Jun 2009 17:22:52 +0000 (17:22 +0000)]
- Procedural: more support for the Debug inline option (does not work yet)
- transcript: now we can process a given subset so the source files
- termContentPres: bugfix in the syntax of letrec, a space was missing :(

now nat/generic_iter_p.ma is fully reconstructed :) (thx Claudio)

14 years agoDebugging code removed.
Claudio Sacerdoti Coen [Tue, 9 Jun 2009 16:59:24 +0000 (16:59 +0000)]
Debugging code removed.

14 years agoTemporary (and partially broken) patch for Ferruccio: I duplicate
Claudio Sacerdoti Coen [Tue, 9 Jun 2009 16:37:54 +0000 (16:37 +0000)]
Temporary (and partially broken) patch for Ferruccio: I duplicate
\Pi abstractions in let ... rec definitions in order to make the system
infer the same names. However, it could be infer a -> in place of a \forall.

14 years agoalmost complete superposition right step
Enrico Tassi [Tue, 9 Jun 2009 16:22:41 +0000 (16:22 +0000)]
almost complete superposition right step

14 years agosnapshot
Enrico Tassi [Tue, 9 Jun 2009 15:09:42 +0000 (15:09 +0000)]
snapshot

14 years agosee the previous commit
Enrico Tassi [Tue, 9 Jun 2009 15:01:30 +0000 (15:01 +0000)]
see the previous commit

14 years agotermAcicContent is logic independent (despite its name) thus it
Enrico Tassi [Tue, 9 Jun 2009 14:56:01 +0000 (14:56 +0000)]
termAcicContent is logic independent (despite its name) thus it
needs also term_of_nref

14 years agoOptimized weigths comparison, removed normalization
denes [Tue, 9 Jun 2009 13:31:02 +0000 (13:31 +0000)]
Optimized weigths comparison, removed normalization

14 years agosnaphost: supright almost done
Enrico Tassi [Tue, 9 Jun 2009 13:17:31 +0000 (13:17 +0000)]
snaphost: supright almost done

14 years ago...
Enrico Tassi [Tue, 9 Jun 2009 13:17:14 +0000 (13:17 +0000)]
...

14 years ago...
Enrico Tassi [Tue, 9 Jun 2009 13:16:05 +0000 (13:16 +0000)]
...

14 years agoImplemented substitution application and concatenation
denes [Tue, 9 Jun 2009 13:15:58 +0000 (13:15 +0000)]
Implemented substitution application and concatenation

14 years ago...
Enrico Tassi [Tue, 9 Jun 2009 13:15:18 +0000 (13:15 +0000)]
...

14 years agofixed metas
Enrico Tassi [Tue, 9 Jun 2009 09:54:56 +0000 (09:54 +0000)]
fixed metas

14 years agofixed building
Enrico Tassi [Tue, 9 Jun 2009 09:54:36 +0000 (09:54 +0000)]
fixed building

14 years ago...
Enrico Tassi [Mon, 8 Jun 2009 18:56:48 +0000 (18:56 +0000)]
...

14 years agoa skeleton of supright
Enrico Tassi [Mon, 8 Jun 2009 17:27:16 +0000 (17:27 +0000)]
a skeleton of supright

14 years agosome more functors and a nice higher-order all_positions iterator
Enrico Tassi [Mon, 8 Jun 2009 16:34:39 +0000 (16:34 +0000)]
some more functors and a nice higher-order all_positions iterator

14 years agoadded META for ng_paramodulation
Enrico Tassi [Mon, 8 Jun 2009 13:04:29 +0000 (13:04 +0000)]
added META for ng_paramodulation

14 years agoPrevious commit reverted, as explained in that log.
Claudio Sacerdoti Coen [Sat, 6 Jun 2009 16:45:12 +0000 (16:45 +0000)]
Previous commit reverted, as explained in that log.

14 years agoThis commit restores the ids_to_father_ids table.
Claudio Sacerdoti Coen [Sat, 6 Jun 2009 16:43:35 +0000 (16:43 +0000)]
This commit restores the ids_to_father_ids table.
However, after the implementation, I sort of realized that maybe this table
is useless, after all.
Thus I am gonna do my commit and immediately revert it (just to keep the
code in SVN in case of need).

14 years agosome renaming to make ocamlopt happy
Enrico Tassi [Sat, 6 Jun 2009 08:59:51 +0000 (08:59 +0000)]
some renaming to make ocamlopt happy

14 years agobugfix in Include syntax: it was changed and committed by mistake :(
Ferruccio Guidi [Fri, 5 Jun 2009 22:23:42 +0000 (22:23 +0000)]
bugfix in Include syntax: it was changed and committed by mistake :(

14 years ago- Procedural convertible rewrites in the conclusion are now detected and replaced...
Ferruccio Guidi [Fri, 5 Jun 2009 22:18:01 +0000 (22:18 +0000)]
- Procedural convertible rewrites in the conclusion are now detected and replaced by change
- grafiteAst: semantics of the Include flag changed: now true means normal include, New Inline flags Coercions, Comments (activated) Debug (not yet)
- library: eq_plus_Zplus moved from Z/times to Z/plus

now Z/plus.ma Z/times.ma are fully reconstructed :)

15 years agoFirst tests for paramodulation (pretty printer, unification)
denes [Fri, 5 Jun 2009 15:33:35 +0000 (15:33 +0000)]
First tests for paramodulation (pretty printer, unification)

15 years ago- replaced part1a/defn with the version based on induction/inversion and deleted
Wilmer Ricciotti [Fri, 5 Jun 2009 13:27:14 +0000 (13:27 +0000)]
- replaced part1a/defn with the version based on induction/inversion and deleted
older version
- more minor improvements

15 years agoFix : wrong exception was catch in apply_subst
denes [Fri, 5 Jun 2009 12:25:06 +0000 (12:25 +0000)]
Fix : wrong exception was catch in apply_subst

15 years ago1) the home button of CicBrowser now works also for NG
Claudio Sacerdoti Coen [Fri, 5 Jun 2009 09:52:20 +0000 (09:52 +0000)]
1) the home button of CicBrowser now works also for NG
2) implemented simple (i.e. no natural language) rendering of NG constants.
   Inductive types and (co)recursive definitions are still missing.

15 years agoThe kernel _must_ check the correctness of the height since the reduction
Claudio Sacerdoti Coen [Fri, 5 Jun 2009 08:56:17 +0000 (08:56 +0000)]
The kernel _must_ check the correctness of the height since the reduction
machine never tries to reduce terms whose height is 0. Thus, if the
declared height is 0, the height is no longer an optimization!

15 years agosyntax error fixed :(
Ferruccio Guidi [Thu, 4 Jun 2009 18:41:36 +0000 (18:41 +0000)]
syntax error fixed :(

15 years ago- doubleTypeInference: we check for unreferenced letins in the inferred type also...
Ferruccio Guidi [Thu, 4 Jun 2009 18:35:24 +0000 (18:35 +0000)]
- doubleTypeInference: we check for unreferenced letins in the inferred type also after beta-reduction because beta-reduction can cause unreferenced letins
- procedural: bugfix in the use of inner types, the expected type was sometimes used in place of the inferred type; context cleaning is now disabled because the clear tactics are not generated; debugging mode is now activated

nat/ord.ma is now fully reconstructed :)

15 years agoFirst pretty printing functions
denes [Thu, 4 Jun 2009 13:57:56 +0000 (13:57 +0000)]
First pretty printing functions

15 years agominor changes here and there. We extend fo-unification with
Enrico Tassi [Thu, 4 Jun 2009 10:19:04 +0000 (10:19 +0000)]
minor changes here and there. We extend fo-unification with
(X ...) =?= (f ...) --> X := f

15 years agocomments
Enrico Tassi [Thu, 4 Jun 2009 10:18:12 +0000 (10:18 +0000)]
comments

15 years agobetter type for comparison and implementation of KBO orderings
Enrico Tassi [Thu, 4 Jun 2009 09:52:15 +0000 (09:52 +0000)]
better type for comparison and implementation of KBO orderings

15 years agomore functors
Enrico Tassi [Thu, 4 Jun 2009 08:09:31 +0000 (08:09 +0000)]
more functors

15 years ago- boxPp: added missing spaces
Ferruccio Guidi [Wed, 3 Jun 2009 20:20:11 +0000 (20:20 +0000)]
- boxPp: added missing spaces
- core_notation: bug fix in the input notation for congruent: we added term 90 after \sub
- library/nat/permutation.ma: added input notation for transpose and fixed term precedence in its output notation
- library/Makefile: compilation of single files re-enabled.
The syntax for compiling file.ma is is "make file.mo" and "make file.mo.opt"

now nat/congruence.ma and nat/permutation.ma are fully reconstructed :)

15 years agoUpdate, using induction/inversion.
Wilmer Ricciotti [Wed, 3 Jun 2009 16:47:25 +0000 (16:47 +0000)]
Update, using induction/inversion.

15 years agofunctorial abstraction over term blobs
Enrico Tassi [Wed, 3 Jun 2009 15:37:06 +0000 (15:37 +0000)]
functorial abstraction over term blobs

15 years agonot_to_not
Andrea Asperti [Wed, 3 Jun 2009 14:42:12 +0000 (14:42 +0000)]
not_to_not

15 years agoNew test for NG notation.
Claudio Sacerdoti Coen [Wed, 3 Jun 2009 08:57:56 +0000 (08:57 +0000)]
New test for NG notation.

15 years agoHuge commit with several changes:
Claudio Sacerdoti Coen [Wed, 3 Jun 2009 08:56:58 +0000 (08:56 +0000)]
Huge commit with several changes:

1) CicNotationPres.render: type changed to make it more general (no
   dependency on the Hashtbl) and URI/REFERENCE agnostic.
   A compatibility function CicNotationPres.lookup_uri is provided to
   easily map the (old) Hashtbl to the (new) lookup function.
2) user interface partially changed to render NG objects in the CicBrowser
   and to follow NG hyperlinks
3) New CicNotationPt entries NRef (similar to Uri) and NRefPattern
   (similar to UriPattern) to avoid hijacking the old Uris (actually,
   uris + xpointers) to also hold new references.
   This allows to properly implement notation (for NG) and to properly
   handle hyperlinks.
4) all remaining Warnings for unused variables fixed (in some way or
   another, hopefully the correct one)
5) GrafiteEngine, NQed: the height of an object is now recomputed just
   before putting it in the environment. This fixes all the bugs related
   to reduction.
6) GrafiteParser/LexiconEngine: both old URIs and new references are now
   allowed in NG terms and in notations
7) ng_cic_content: rendering functions now return an "id |-> reference" table
   to correctly implement MathML hrefs
8) NReference: new compare function
9) NCicUntrusted: new height_of_obj_kind function (to be used in GrafiteEngine)
10) OCic2NCic: new reference_of_oxuri function to map old uris + xpointers
   into new references
11) bug fixed: after the commit by Enrico that starts using the extensible
   PTS, the old-to-new objects translations used to map Type into "Type" which
   was not declared. Type is now mapped into Type[0] and Type (as a "notation")
   is now a synonim of Type[0] (only during parsing for now)
12) bug fixed: after the commit by Enrico that cleans up terms for
    alpha-conversion and dummy products, the test in NCicTypeChecker that
    verifies the consistency of left parameters in constructor --- that used
    to do that NOT up to alpha-conversion --- used to fail when dummy products
    were found. The test is now relaxed to include alpha-conversion.
13) bug fixed: NCicTypeChecker did not verify that a .dec reference pointed to
    an axiom and that a .def reference did not point to an axiom. Fixed.

15 years agoFirst implementation of unification on foterms
denes [Mon, 1 Jun 2009 16:36:42 +0000 (16:36 +0000)]
First implementation of unification on foterms

15 years agoFirst functions on substitutions for unification
denes [Mon, 1 Jun 2009 15:32:18 +0000 (15:32 +0000)]
First functions on substitutions for unification

15 years agoadded a snapshot of comparison
Enrico Tassi [Mon, 1 Jun 2009 13:49:20 +0000 (13:49 +0000)]
added a snapshot of comparison

15 years agoThis works for me
Andrea Asperti [Mon, 1 Jun 2009 12:23:46 +0000 (12:23 +0000)]
This works for me

15 years agowe rewrite the paramodulation code!
Enrico Tassi [Mon, 1 Jun 2009 11:57:04 +0000 (11:57 +0000)]
we rewrite the paramodulation code!