Commit Graph

28 Commits

Author SHA1 Message Date
1b4c400bfb Look up variables 2020-05-04 16:55:21 +02:00
f8918628fa Pass declarations to term parser 2020-05-04 16:53:42 +02:00
555f983285 Look up predicates 2020-05-04 16:48:35 +02:00
56885dc290 Pass declarations to formula parser 2020-05-04 16:40:59 +02:00
30c28c2bc4 Fix unit tests 2020-05-03 18:05:45 +02:00
8d474fa489 Finish dirty first pass over parser 2020-04-28 05:21:58 +02:00
66ac57c5b8 Work in progress 2020-04-28 03:18:05 +02:00
0fb2be4897 Minor refactoring 2020-04-28 02:39:58 +02:00
80aafb2359 Implement right-to-left implication 2020-04-28 02:36:53 +02:00
a2268ab85b Minor renaming 2020-04-28 02:36:47 +02:00
451b887019 Minor renaming 2020-04-28 02:36:38 +02:00
a12acae633 Refactoring 2020-04-28 02:36:02 +02:00
35937d7930 Clean-up 2020-04-28 02:35:46 +02:00
31805fa9d8 Clean-up 2020-04-28 02:16:15 +02:00
a6edd2e9cc Clean-up 2020-04-28 02:14:27 +02:00
834194d40a Work in progress 2020-04-28 02:02:20 +02:00
15d0d2b76c Work in progress 2020-04-27 19:36:12 +02:00
ff17c60cd1 Start rewriting parser 2020-04-22 20:01:29 +02:00
b516396977 Fix parsing nested quantified formulas 2020-04-20 02:57:32 +02:00
987e02f478 Allow period character as word boundary 2020-04-20 02:51:46 +02:00
ba385868cb Fix parsing precedence of left implication vs. less-than comparison 2020-04-20 02:40:13 +02:00
04e2d61583 Fix order of operators 2020-04-19 23:05:12 +02:00
2b3add562f Update nom to 6.0.0-alpha1 2020-04-17 18:22:50 +02:00
0d5971cad7 Retrieve declarations using traits and not objects 2020-04-17 04:06:22 +02:00
0e78e4ea57 Minor refactoring 2020-04-17 03:30:32 +02:00
abbc047dda Replace variable declaration stack with recursive layer implementation 2020-04-17 02:53:23 +02:00
62b9e2da04 Make variable declaration stack safer with guards 2020-04-17 01:40:19 +02:00
fa6f27beb4 Start reimplementing parser
Implement name parsing

Start parsing terms

Implement word boundaries

Implement strings

Add pipe character to allowed word boundaries

Implement booleans

Require word boundaries around names

Implement variable parsing

Finish implementing term parsing

Add term parsing test

Test associativity of multiplication

Make parse feature the default

Fix term parsing and finish tests

Start parsing formulas

Continue parsing formulas

Finish implementing formula parsing

Move boolean parser to separate module

Move integer parser to separate module

Move special integer parser to separate module

Move string parser to separate module

Address warnings

Fix negation parser

Refactor term parser tests

Address clippy warning

Disallow reserved keywords as names

Add missing word boundary character

Check that names don’t start with special characters

Minor refactoring

Add note

Test conjunction parser

Test disjunction parser

Parentheses for stronger checks

Add note

Fix implication parser and output

Split formatting functionality into two files

Test term formatting

Add unit test for function declaration formatting

Work in progress

Fix implication formatting

Refactor precedence rules

Start testing formula formatter

Minor formatting

Test remaining formula types

Add unit tests for precedence-0 formulas and lower

Before larger refactoring

Refactor precedence rules for formulas

Remove ChildPosition enum

Fix

Address warnings

Remove unneeded precedence implementation

Test negation

Test quantified formulas

Clean up tests

Clean up tests

Test conjunction

Test disjunction

Start testing implications

Refactor parenthesis requirement check

Fix precedence of implication

Continue testing implication

Test biconditionals

Experimental method for testing all permutations

Rewrite tests for clarity

Rewrite tests for clarity

Add type annotations

Rewrite tests for clarity

Reorganize tests

Finish testing biconditionals

Support empty n-aries

Support quantified expressions with 0 parameters

Rewrite term formatting tests for clarity

Reorganize term formatter tests

Refactor parenthesis rules for terms

Remove unneeded parentheses enum

Refactoring

Refactoring

Minor clean-up

Minor clean-up

Simplify representation of quantified formulas

Remove redundant indirection

Remove redundant indirection
2020-04-17 01:40:16 +02:00