Skip to content

feat: implementation of discrimination trees - #81

Open
MinaroliCorentin wants to merge 23 commits into
GoelandProver:masterfrom
MinaroliCorentin:dt-Corentin
Open

feat: implementation of discrimination trees#81
MinaroliCorentin wants to merge 23 commits into
GoelandProver:masterfrom
MinaroliCorentin:dt-Corentin

Conversation

@MinaroliCorentin

@MinaroliCorentin MinaroliCorentin commented Jul 24, 2026

Copy link
Copy Markdown

Description

Add the possibility to store terms using a discriminationTree rather than the original codeTree. The discriminationTree est available using the -dt option in the terminal. 2 options are possibles. The "basic" one try to check if a branch is suitable for unification and the second option, available with "-ep" option, use early-pruning. Both call the Robinson algorithm already available in the master branch. The DTree is able support Typed Term by storing them after the predicate :
Root == Predicat, Then optionnal Types, then terms.
The DTree use goroutines when function Unify is called to looking every branch ( 1 branch == 1 goroutine ) in order to retrieve all the potential unifiable branch ( RetrieveUnifiables functions ).

PR Dependencies

Test-suite update

Devtools/make test-suite works perfectly for Dtree, Dtree with option -ep but also with the original CodeTree.

Notes.

The discirminationTree equality module might note works well because it's not included in this project / branch.

jrosain and others added 23 commits March 26, 2026 14:03
Working on Type Unification
Unify works again.

To Do :
Find Why UnifyTerm Bug.
Fix all the v2.
Try the different tptp test
Unify and UnifyTerm works pretty good.
Unify2 and UnifyTerm2 Workish, fail on some TPTP and the code is grabage. It's probably better to delete all V2 fonction and start from scratch.
@github-actions github-actions Bot added the needs:ci Needs a CI run before merging label Jul 24, 2026
@jrosain jrosain changed the title Dt corentin feat: implementation of discrimination trees Jul 26, 2026
@jrosain
jrosain self-requested a review July 26, 2026 10:36
@jrosain jrosain added the request:ci Requests a CI run from the workflow label Jul 29, 2026
@github-actions github-actions Bot removed needs:ci Needs a CI run before merging request:ci Requests a CI run from the workflow labels Jul 29, 2026

@jrosain jrosain left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After running locally, I believe that the failure of the test-suite is probably to basics/equality-blowup.p.
This is one thing that should be fixed.

Moreover, I think that @jcailler should submit ccddd14 as a separate PR before I can review this one.

@jrosain jrosain added kind:enhancement New feature or upgrade of a previous one has:other-pr-dependency This PR cannot be merged before another PR (the maintainer should specify the dependency(ies)) part:unification About the unification process of Goéland labels Jul 29, 2026
@jrosain jrosain self-assigned this Jul 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

has:other-pr-dependency This PR cannot be merged before another PR (the maintainer should specify the dependency(ies)) kind:enhancement New feature or upgrade of a previous one part:unification About the unification process of Goéland

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants