The authors describe the ET*NOT algorithm, which uses the ET* algorithm to evaluate the predicates in negative literals and uses the resulting extension tables to represent the positive facts. If the literal is in the extension table, the result of the negation is false; otherwise, it is true. Applying the ET*NOT algorithm to evaluate negation has two advantages. The first advantage is that the ET*NOT algorithm extends the implementation of the negation as failure rule to evaluate negation under the more powerful closed world assumption. The second advantage is that the ET*NOT algorithm uses the materialized views of the predicates in the extension table and may avoid expensive recomputation.