Идентификаторы документов являются внутренними для Lucene и действительно никогда не должны использоваться.Они могут быть изменены без предупреждения, среди других вопросов.
Как вы получаете документы ID?Предположительно через запрос?Затем просто удалите на основе этого запроса.Кроме того, если у вас есть собственное поле уникального идентификатора, вы можете сделать writer.DeleteDocuments(new Term("MyIDField", "ID to delete"));