Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make merge-reduce unit tests work #6

Open
4 tasks
spacekookie opened this issue Oct 26, 2017 · 0 comments
Open
4 tasks

Make merge-reduce unit tests work #6

spacekookie opened this issue Oct 26, 2017 · 0 comments

Comments

@spacekookie
Copy link
Owner

spacekookie commented Oct 26, 2017

That can be done in two ways (one simple, one not so simple)

  1. Making some assumptions and counting state, analysing the clause often before making a move
  2. Implement a trial system and backtracking in case a branch didn't work out

Regardless of what is chosen, there are some things that need to be implemented nonetheless

  • Instead of calling reduce there needs to be a consider_reduce_choices function which returns a set of terms that can be acted on, saying what operation can be performed
  • The reduce function then needs to build priorities according to the resolution rules
  • Record every action taken in the clause history (implement a queue?)
  • Add a results struct into the clause that can be slowly filled with data as it trickles in

Derivations are simple and can immediately lead to a field in the result struct.

Merges are a bit more complicated because they might need to be performed in a specific order { A, B }, { !A, D }, { A, B! } for example.

To be continued

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant