docs: public boolean requiresMaterialisation(Atom parentAtom){
          if (requiresMaterialisation == null) {
              requiresMaterialisation = parentAtom.requiresMaterialisation()
                      || getHead().getAtom().requiresMaterialisation()
                      || hasDisconnectedHead();
          }
          return requiresMaterialisation;
      }