Did you know ... Search Documentation:
Predicate retract/2
 asserta(Head, Body) is det[private]
 assertz(Head, Body) is det[private]
 retract(Head, Body) is det[private]
Mapped to asserta((Head:-Body)), etc. Note that this masks SWI-Prolog's asserta/2, etc.