recorda/3recorda(+Key, +Term, -Ref)
records the Term in the internal database as the first item for the key Key; a database reference to the newly-recorded term is returned in Ref.
If Key is a compound term, only its principal functor is
significant. That is, foo(1) represents the same key as foo(n).
Any uninstantiated variables in the Term will be replaced by new private variables, along with copies of any subgoals blocked on these variables (see ref-sem-sec).
instantiation_erroruninstantiation_error