feat(prolog): Atom unification

This commit is contained in:
Tibo De Peuter 2025-03-29 16:04:40 +01:00
parent 8429733200
commit 39c3af4ba5
Signed by: tdpeuter
GPG key ID: 38297DE43F75FFE2
5 changed files with 47 additions and 0 deletions

5
src/prolog/Result.kt Normal file
View file

@ -0,0 +1,5 @@
package prolog
import prolog.terms.Variable
data class Result(val success: Boolean, val substitutions: List<Variable>)

3
src/prolog/terms/Atom.kt Normal file
View file

@ -0,0 +1,3 @@
package prolog.terms
data class Atom(val name: String): Term()

3
src/prolog/terms/Term.kt Normal file
View file

@ -0,0 +1,3 @@
package prolog.terms
sealed class Term

7
src/prolog/unify.kt Normal file
View file

@ -0,0 +1,7 @@
package prolog
import prolog.terms.Term
fun unify(term1: Term, term2: Term): Result {
return Result(term1 == term2, emptyList())
}