]> matita.cs.unibo.it Git - fireball-separation.git/log
fireball-separation.git
6 years agoAdded horrible problem, showing hard dependency on encodings permutations
acondolu [Wed, 26 Jul 2017 14:06:31 +0000 (16:06 +0200)]
Added horrible problem, showing hard dependency on encodings

6 years agoCode for critical eat reimplemented
acondolu [Tue, 25 Jul 2017 15:16:57 +0000 (17:16 +0200)]
Code for critical eat reimplemented

x is now critical eat iff it is the head of a num and it occurs unprotected
in other numbers or in divergent terms where unprotected means
- as the scrutinee of a match, with wrong arity
- everywhere else with too great arity

The new definition fixes problems/bugs2 (renamed to problems/bomb)

6 years agoBug fixed in pretty-printing of original names under lambdas
acondolu [Tue, 25 Jul 2017 14:57:26 +0000 (16:57 +0200)]
Bug fixed in pretty-printing of original names under lambdas

6 years agoFix in pretty-printing of match
acondolu [Tue, 25 Jul 2017 14:49:11 +0000 (16:49 +0200)]
Fix in pretty-printing of match

6 years agoDebugging information improved
acondolu [Tue, 25 Jul 2017 12:25:56 +0000 (14:25 +0200)]
Debugging information improved

6 years agoCode simplification + Bugfix
acondolu [Tue, 25 Jul 2017 11:43:18 +0000 (13:43 +0200)]
Code simplification + Bugfix

In case (match x ... with ...) and we are eating x,
 so we need to substitute
See problems/bugs1

6 years agoImplemented parsing of "nominal" variables (`@`)
acondolu [Tue, 25 Jul 2017 08:21:16 +0000 (10:21 +0200)]
Implemented parsing of "nominal" variables (`@`)

Each occurrence of `@` is parsed as a fresh free variable

6 years agoRemoved num_more_args
acondolu [Tue, 25 Jul 2017 07:59:42 +0000 (09:59 +0200)]
Removed num_more_args

6 years agoFixing the bug when eating triggers the reduction of a match
acondolu [Mon, 24 Jul 2017 15:19:59 +0000 (17:19 +0200)]
Fixing the bug when eating triggers the reduction of a match

6 years agoAdded problem failing because of order of step
acondolu [Mon, 24 Jul 2017 14:18:19 +0000 (16:18 +0200)]
Added problem failing because of order of step

6 years agoTest --with-pac fails if unseparable+uncomplete
acondolu [Mon, 24 Jul 2017 14:17:53 +0000 (16:17 +0200)]
Test --with-pac fails if unseparable+uncomplete

6 years agoAllow comments (#) at the end of terms
acondolu [Mon, 24 Jul 2017 14:15:53 +0000 (16:15 +0200)]
Allow comments (#) at the end of terms

6 years agoLogging options to display measure of single terms in string_of_problem
acondolu [Mon, 24 Jul 2017 14:15:19 +0000 (16:15 +0200)]
Logging options to display measure of single terms in string_of_problem

6 years agoFixed bug in Scott.mk_match when no branches (Fixes problem 1 in solved)
acondolu [Mon, 24 Jul 2017 13:38:50 +0000 (15:38 +0200)]
Fixed bug in Scott.mk_match when no branches (Fixes problem 1 in solved)

6 years agoFixed bug in computing special k
acondolu [Mon, 24 Jul 2017 12:55:31 +0000 (14:55 +0200)]
Fixed bug in computing special k

6 years agoAdded exception Lambda, which may be caught when a conv becomes a lambda
acondolu [Mon, 24 Jul 2017 12:55:04 +0000 (14:55 +0200)]
Added exception Lambda, which may be caught when a conv becomes a lambda

6 years agoAdded very simple generator of tests with bombs/pacmans, run it with --with-pac
acondolu [Mon, 24 Jul 2017 12:44:47 +0000 (14:44 +0200)]
Added very simple generator of tests with bombs/pacmans, run it with --with-pac

6 years agoFixed eta_compare in the case Lam vs. Bot
acondolu [Mon, 24 Jul 2017 11:09:05 +0000 (13:09 +0200)]
Fixed eta_compare in the case Lam vs. Bot

6 years agoRemoved special strategies in choose_step
acondolu [Mon, 24 Jul 2017 12:05:08 +0000 (14:05 +0200)]
Removed special strategies in choose_step

6 years agoBetter error messages in parser
acondolu [Sun, 23 Jul 2017 20:23:34 +0000 (22:23 +0200)]
Better error messages in parser

6 years agoCheck for absence of bombs and pacmans
acondolu [Sun, 23 Jul 2017 20:22:41 +0000 (22:22 +0200)]
Check for absence of bombs and pacmans

6 years agoRevert subst in branches of matches
acondolu [Sun, 23 Jul 2017 07:59:00 +0000 (09:59 +0200)]
Revert subst in branches of matches

Actually, it could be moved in susbt_in_problem,
hence doing it only once (on the deltas), instead
of replacing multiple times like now (useless).

6 years agoCleanup in w, added names, uncommented test for low special_k
acondolu [Sun, 23 Jul 2017 07:31:07 +0000 (09:31 +0200)]
Cleanup in w, added names, uncommented test for low special_k

6 years agoChange to compute_special_k
acondolu [Sat, 22 Jul 2017 22:33:00 +0000 (00:33 +0200)]
Change to compute_special_k

Now the special_k taked into account the number or arguments (arity) of
terms. This solves problem "low special_k" in problems/w

6 years agoComments, fix indentation and
acondolu [Sat, 22 Jul 2017 20:35:44 +0000 (22:35 +0200)]
Comments, fix indentation and

6 years agoRenamed in critical_showstoppers: showstoppers -> inedible (I don't know why)
acondolu [Sat, 22 Jul 2017 19:58:31 +0000 (21:58 +0200)]
Renamed in critical_showstoppers: showstoppers -> inedible (I don't know why)

6 years agoSimplified arity_of, precompute_edible_data, critical_showsteppers
acondolu [Sat, 22 Jul 2017 19:34:23 +0000 (21:34 +0200)]
Simplified arity_of, precompute_edible_data, critical_showsteppers

6 years agoFixed computation of arity for top-level inerts
acondolu [Sat, 22 Jul 2017 19:00:26 +0000 (21:00 +0200)]
Fixed computation of arity for top-level inerts

6 years agoSimplified not-working example
acondolu [Sat, 22 Jul 2017 18:59:55 +0000 (20:59 +0200)]
Simplified not-working example

6 years agoMissing parenthesis fixed
Claudio Sacerdoti Coen [Tue, 18 Jul 2017 15:55:29 +0000 (17:55 +0200)]
Missing parenthesis fixed

6 years agoFailing case found
Claudio Sacerdoti Coen [Tue, 18 Jul 2017 13:38:27 +0000 (15:38 +0200)]
Failing case found

6 years agoHack to reserve var 0 to purify it to BOM removed
Claudio Sacerdoti Coen [Tue, 18 Jul 2017 13:36:56 +0000 (15:36 +0200)]
Hack to reserve var 0 to purify it to BOM removed

6 years agoString ==> Bytes to make recent ocaml compilers happy
Claudio Sacerdoti Coen [Tue, 18 Jul 2017 13:26:48 +0000 (15:26 +0200)]
String ==> Bytes to make recent ocaml compilers happy

6 years agoExtracting solutions of 3-coloring problems
acondolu [Sun, 16 Jul 2017 17:36:19 +0000 (19:36 +0200)]
Extracting solutions of 3-coloring problems

Added sample unsat problems found on the internet

6 years agosubst does not replace anymore in branches of maches
acondolu [Sun, 16 Jul 2017 14:01:21 +0000 (16:01 +0200)]
subst does not replace anymore in branches of maches

It was unnecessary: a match cannot expand to a previous branch

6 years agoCommented out problem, it is (still) failing because div occurs in conv
acondolu [Sun, 16 Jul 2017 13:41:49 +0000 (15:41 +0200)]
Commented out problem, it is (still) failing because div occurs in conv

6 years agoPrinting now preserves the names of the original free variables
acondolu [Sun, 16 Jul 2017 13:41:16 +0000 (15:41 +0200)]
Printing now preserves the names of the original free variables

6 years agoFixed typo in problem
acondolu [Sat, 15 Jul 2017 18:25:07 +0000 (20:25 +0200)]
Fixed typo in problem

6 years agoImproved parsing
acondolu [Sat, 15 Jul 2017 18:23:20 +0000 (20:23 +0200)]
Improved parsing

- removed unused parse'
- fixed bug which was ignoring the first problems in some files

6 years agoImproved pretty-printing
acondolu [Sat, 15 Jul 2017 18:21:39 +0000 (20:21 +0200)]
Improved pretty-printing

- Num does not use print_name anymore
- Original names of free variables are preserved
- bound variables' names start with x

6 years agoAdded problem wrongly backtracking
acondolu [Sat, 15 Jul 2017 15:16:51 +0000 (17:16 +0200)]
Added problem wrongly backtracking

6 years agoForgot one "Z"
acondolu [Sat, 15 Jul 2017 15:00:04 +0000 (17:00 +0200)]
Forgot one "Z"

6 years agoCode clean-up
acondolu [Sat, 15 Jul 2017 14:47:50 +0000 (16:47 +0200)]
Code clean-up

6 years agoCode clean-up
acondolu [Sat, 15 Jul 2017 14:41:53 +0000 (16:41 +0200)]
Code clean-up

6 years agoImportant: added special variable "Z" for zero.
acondolu [Sat, 15 Jul 2017 14:41:39 +0000 (16:41 +0200)]
Important: added special variable "Z" for zero.

- Removed append_zero in Lambda4
- Now tests append "Z" at the end of ps'
- Manually appended "Z" at the end of all problems
- Removed tmp function in Lambda4, renamed to problem_of

6 years agoMoved all problems in problems folder. Last ones in "w"
acondolu [Sat, 15 Jul 2017 14:01:36 +0000 (16:01 +0200)]
Moved all problems in problems folder. Last ones in "w"

6 years agoEncoding of SAT problems and 3-colorability of graphs
acondolu [Sat, 15 Jul 2017 13:31:50 +0000 (15:31 +0200)]
Encoding of SAT problems and 3-colorability of graphs

6 years agoFixes to parser
acondolu [Sat, 15 Jul 2017 13:31:04 +0000 (15:31 +0200)]
Fixes to parser

6 years agoAdded problems encoded from 3-colorability of graphs
acondolu [Sat, 15 Jul 2017 13:05:59 +0000 (15:05 +0200)]
Added problems encoded from 3-colorability of graphs

6 years agoFixed "$" in parser
acondolu [Sat, 15 Jul 2017 13:05:34 +0000 (15:05 +0200)]
Fixed "$" in parser

6 years agoCommand line arguments to ./a.out
acondolu [Fri, 14 Jul 2017 18:34:02 +0000 (20:34 +0200)]
Command line arguments to ./a.out

For example:
 ./a.out problems/*
 ./a.out problems/p

Moved "o"-problems to problems/o

6 years agoFixed problems separator in parser: now it is $
acondolu [Fri, 14 Jul 2017 18:32:20 +0000 (20:32 +0200)]
Fixed problems separator in parser: now it is $

A separable problem's label may start with '!', a not separable's with '?'

6 years agoAdded label to problem
acondolu [Fri, 14 Jul 2017 18:30:55 +0000 (20:30 +0200)]
Added label to problem

6 years agoRemoved invalid problems
acondolu [Fri, 14 Jul 2017 17:39:42 +0000 (19:39 +0200)]
Removed invalid problems

6 years agoFailure in case of empty problem, to be fixed
acondolu [Fri, 14 Jul 2017 17:39:21 +0000 (19:39 +0200)]
Failure in case of empty problem, to be fixed

6 years agoParser.from_file, and p* problems moved to problems/p
acondolu [Fri, 14 Jul 2017 17:28:29 +0000 (19:28 +0200)]
Parser.from_file, and p* problems moved to problems/p

6 years agoproblems now contain a label and the names of the original free variables
acondolu [Fri, 14 Jul 2017 17:25:23 +0000 (19:25 +0200)]
problems now contain a label and the names of the original free variables

6 years agoFirst draft of Parser.problem_of_string
acondolu [Fri, 14 Jul 2017 16:02:19 +0000 (18:02 +0200)]
First draft of Parser.problem_of_string

- problem_of_string should unify old Lambda4.problem_of and Parser.parse'
- Lambda4.problem_of was temporarily factored in problem_of_2
  and problem_of_String_tmp

6 years agoChanged logic of entrypoint in Lambda4
acondolu [Fri, 14 Jul 2017 15:20:42 +0000 (17:20 +0200)]
Changed logic of entrypoint in Lambda4

- removed exception Fail
- added "check",which checks if we are in a subproblem
  of separation on which we know to be complete
- "solve" does not raise particular exceptions anymore,
  and the program raise failure only if there is some bug

6 years agoMoved parse' from Num to Parser
acondolu [Fri, 14 Jul 2017 14:44:15 +0000 (16:44 +0200)]
Moved parse' from Num to Parser

6 years agoFixed: was using compare in place of eta_eq
acondolu [Fri, 14 Jul 2017 12:39:10 +0000 (14:39 +0200)]
Fixed: was using compare in place of eta_eq

in particular, eta_eq ignores arities of variables

there used to be cases of duplicate entries in PS (up to arities of variables)

6 years agoRe-use Util.index_of
acondolu [Fri, 14 Jul 2017 12:38:08 +0000 (14:38 +0200)]
Re-use Util.index_of

6 years agoCode clean-up
acondolu [Fri, 14 Jul 2017 12:31:30 +0000 (14:31 +0200)]
Code clean-up

Less casts and casts in the right place

6 years agoTidying up problems.ml
acondolu [Fri, 14 Jul 2017 08:57:22 +0000 (10:57 +0200)]
Tidying up problems.ml

6 years agoNew failing problem, which shows that we need to change special_k
acondolu [Fri, 14 Jul 2017 08:28:09 +0000 (10:28 +0200)]
New failing problem, which shows that we need to change special_k

6 years agoAdded assert false
acondolu [Thu, 13 Jul 2017 18:35:37 +0000 (20:35 +0200)]
Added assert false

6 years agoFixed bug in eta_subterm
acondolu [Thu, 13 Jul 2017 18:35:10 +0000 (20:35 +0200)]
Fixed bug in eta_subterm

6 years agoRemove FORCE option in Makefile
acondolu [Thu, 13 Jul 2017 18:34:50 +0000 (20:34 +0200)]
Remove FORCE option in Makefile

6 years agoFix: missing check to avoid stepping on vars of non positive arity
acondolu [Thu, 13 Jul 2017 17:05:39 +0000 (19:05 +0200)]
Fix: missing check to avoid stepping on vars of non positive arity

6 years agoMore problems
acondolu [Thu, 13 Jul 2017 16:53:50 +0000 (18:53 +0200)]
More problems

6 years agoreturn type of simplify_match improved (no `Match in output)
acondolu [Thu, 13 Jul 2017 16:52:32 +0000 (18:52 +0200)]
return type of simplify_match improved (no `Match in output)

6 years agoAdded safety check for step on n-th argument with n > 1
acondolu [Thu, 13 Jul 2017 16:24:07 +0000 (18:24 +0200)]
Added safety check for step on n-th argument with n > 1

Avoid stepping on n if there is a div/number that would be turned into
a Lambda

6 years agoImproved error messages
acondolu [Thu, 13 Jul 2017 16:19:33 +0000 (18:19 +0200)]
Improved error messages

6 years agoFailing problems commented out
acondolu [Thu, 13 Jul 2017 16:17:06 +0000 (18:17 +0200)]
Failing problems commented out

6 years agoNew tests
acondolu [Thu, 13 Jul 2017 16:08:35 +0000 (18:08 +0200)]
New tests

6 years agoFix (??): some broken tests with Div = variable used to pass
acondolu [Thu, 13 Jul 2017 16:08:08 +0000 (18:08 +0200)]
Fix (??): some broken tests with Div = variable used to pass

6 years agoTentative commit: tactics dropped and clean-up
acondolu [Thu, 13 Jul 2017 15:38:23 +0000 (17:38 +0200)]
Tentative commit: tactics dropped and clean-up

6 years agoFix: max_arity_tms was using wrong comparison
acondolu [Thu, 13 Jul 2017 15:34:12 +0000 (17:34 +0200)]
Fix: max_arity_tms was using wrong comparison

6 years agoFixed try in aux_conv + Added test in pure for divergence of conv
acondolu [Thu, 13 Jul 2017 09:00:36 +0000 (11:00 +0200)]
Fixed try in aux_conv + Added test in pure for divergence of conv

6 years agoFixes to printing
acondolu [Wed, 12 Jul 2017 21:28:46 +0000 (23:28 +0200)]
Fixes to printing

6 years agoAdded more problems with bombs, all working
acondolu [Wed, 12 Jul 2017 21:23:43 +0000 (23:23 +0200)]
Added more problems with bombs, all working

6 years agoDisabled some chars as variable names in the parser
acondolu [Wed, 12 Jul 2017 21:12:44 +0000 (23:12 +0200)]
Disabled some chars as variable names in the parser

6 years agoRemoved bomb variable
acondolu [Wed, 12 Jul 2017 21:11:54 +0000 (23:11 +0200)]
Removed bomb variable

In Pure:
- Added constructor B to Pure.t
- Added rule corresponding to B (bottom) in Pure.mwhd
In Lambda4:
- Instantiating the bomb now actually uses subst_in_problem
- Two new exceptions: Bottom and Pacman
- Fixed subst_in_problem by making expand_match raise these two exceptions,
  which are caught when tolerated

6 years agoPrettier-printing: string_of_problem outputs OCaml code
acondolu [Wed, 12 Jul 2017 19:48:01 +0000 (21:48 +0200)]
Prettier-printing: string_of_problem outputs OCaml code

6 years agoAdded second problem with bombs and pacmans: it works!
acondolu [Wed, 12 Jul 2017 16:52:57 +0000 (18:52 +0200)]
Added second problem with bombs and pacmans: it works!

6 years agoAdded new (passing) problem with a bomb (o1)
acondolu [Wed, 12 Jul 2017 16:39:03 +0000 (18:39 +0200)]
Added new (passing) problem with a bomb (o1)

6 years agoTowards `Bottom and `Pacman
acondolu [Wed, 12 Jul 2017 15:24:54 +0000 (17:24 +0200)]
Towards `Bottom and `Pacman

1) Num updated to handle them
2) lambda4 compiles: safety conditions for projections hopefully
   implemented; strategy code not changed, therefore it will step over
   bombs and friends

6 years agoNew: simple backtracking with trail
acondolu [Tue, 11 Jul 2017 16:17:23 +0000 (18:17 +0200)]
New: simple backtracking with trail

auto_instantiate replaced by choose_step and first

6 years agoFixed if-then-else
acondolu [Tue, 11 Jul 2017 15:40:00 +0000 (17:40 +0200)]
Fixed if-then-else

6 years agoFix: nested `Lambda(false,_) were not handled correctly
acondolu [Tue, 11 Jul 2017 15:39:37 +0000 (17:39 +0200)]
Fix: nested `Lambda(false,_) were not handled correctly

6 years ago-666 -> min_int
acondolu [Tue, 11 Jul 2017 15:38:14 +0000 (17:38 +0200)]
-666 -> min_int

6 years agoFixed indentation and logging
acondolu [Tue, 11 Jul 2017 14:38:26 +0000 (16:38 +0200)]
Fixed indentation and logging

6 years agoinstantiate takes an additional argument which is the number of the argument to the...
acondolu [Tue, 11 Jul 2017 14:36:23 +0000 (16:36 +0200)]
instantiate takes an additional argument which is the number of the argument to the variable on which to step

6 years agoclean removes *.o files
acondolu [Tue, 11 Jul 2017 13:44:40 +0000 (15:44 +0200)]
clean removes *.o files

6 years agoRemoved old .ar files
acondolu [Tue, 11 Jul 2017 13:44:16 +0000 (15:44 +0200)]
Removed old .ar files

6 years agoRun tests with: make run
acondolu [Tue, 11 Jul 2017 13:42:09 +0000 (15:42 +0200)]
Run tests with: make run

6 years agoFix: conv : x:min_int (.... y:1 ...) y was not considered for stepping
acondolu [Tue, 11 Jul 2017 12:00:34 +0000 (14:00 +0200)]
Fix: conv : x:min_int (.... y:1 ...)  y was not considered for stepping

When no other choice is available, step on any >0 variable that occurs in
a conv.

6 years agoNew problems n1, n2 used to debug the problem with dangerous variables fixed in the...
acondolu [Tue, 11 Jul 2017 11:24:09 +0000 (13:24 +0200)]
New problems n1, n2 used to debug the problem with dangerous variables fixed in the last commits

6 years agoBug fix: x (y z) where y was conv_dangerous did not make x so
acondolu [Tue, 11 Jul 2017 11:22:41 +0000 (13:22 +0200)]
Bug fix: x (y z) where y was conv_dangerous did not make x so

Additional fix to last commit: args' where no longer checked for dangerous
variables. Fixed by passing three arguments to dangerous_invert_conv in
place of two.

6 years agoFix bug in dangerous_conv with arity of arguments of matches.
acondolu [Tue, 11 Jul 2017 09:37:18 +0000 (11:37 +0200)]
Fix bug in dangerous_conv with arity of arguments of matches.
Next bug: variable replaced twice