ure
ure copied to clipboard
Replace specialized/incomplete type intersection code in unifier by TypeSetLink
trafficstars
It looks like the pattern matcher already implements a form of type intersection https://wiki.opencog.org/w/TypeSetLink. So it might be possible to replace the adhoc type intersection code of the unifier Unify::type_intersection by something more generic (perhaps improving TypeSetLink along the way if necessary).
This could be a better way to address https://github.com/opencog/atomspace/issues/1906 as well.
What would probably be needed as well is to have atomese reduct works for type links, so for instance
TypeSetLink
TypeNode "ConceptNode"
TypeNode "ConceptNode"
could be reduced to
TypeNode "ConceptNode"
this way the resulting types of the unified variables would note consistently overgrow after each unification.