(assert <факт>+)
При использовании команды assert необходимо помнить, что первое поле факта обязательно должно быть значением типа symbol. В случае удачного добавления фактов в базу знаний, функция возвращает адрес последнего добавленного факта. Если во время добавления некоторого факта произошла ошибка, команда прекращает свою работу и возвращает значение false.
Слотам неупорядоченного факта, значения которых не заданы, будут присвоены значения по умолчанию.
Пример 2.2.5. Использование функции assert
(clear)
(assert (color red))
(assert (color blue)
(value (+ 3 4)))
(deftemplate status
(slot temp)
(slot pressure
(default low)))
(assert (status (temp high)))
Команда clear очищает текущий список фактов (а также все определенные конструкторы, которые уже были и еще будет рассмотрены ниже). В отличие от reset, команда clear не добавляет в список фактов initial-fact.

Рис. 2.2.4. Добавление фактов
При инициализации факта value использовалось выражение, а слот pressure неупорядоченного факта status получил значение по умолчанию low.
По умолчанию CLIPS не позволяет добавлять в список фактов два одинаковых факта. Например, попытка добавить два факта color red приведет к ошибке и функция assert вернет значение false.
Функция retract
Для удаления фактов из текущего списка фактов в системе CLIPS предусмотрена функция retract. Каждым вызовом этой функции можно удалить произвольное число фактов. Удаление некоторого факта может стать причиной удаления других фактов, которые логически связаны с удаляемым.