========
 I’m pretty sure these are identical. They’re just computing “if (departEdge!=NULL) then (departEdge->target()!=NULL)”. In other words, if it’s a non-null edge, it must be fully concrete or inEdgeFromAny(). (same thing for getLatticeBelow for outEdgeToAny())
========
Yes, its the same thing. Sorry about that.

========
if(departEdge && !departEdge->source()) departEdge = NULLPartEdge;
========
yes, that is what I had in my mind. Thanks!

I will see what I can do about the check.