The Ex_comparator::equal_subtree function has a parameter use_props, which can be set to not_at_top. What that should do is that property info is not used at top level, but can be used lower, provided the node at that lower level has parent_rel equal to p_sub or p_super. Right now, it will start looking up properties in a match of \dot{a} with \dot{b} as soon as we reach a and b, which is not correct.
The
Ex_comparator::equal_subtree
function has a parameteruse_props
, which can be set tonot_at_top
. What that should do is that property info is not used at top level, but can be used lower, provided the node at that lower level hasparent_rel
equal top_sub
orp_super
. Right now, it will start looking up properties in a match of\dot{a}
with\dot{b}
as soon as we reacha
andb
, which is not correct.This leads to weird substitution errors like the one reported in https://cadabra.science/qa/1327/dotted-indices-are-not-substituted-correctly .