Input: Circuit model , an assertion ;
Output: Boolean: true or false;
BEGIN
  /* Step 0: initialize input signals via testbench */
;
   ;
 /* Step 1: build polynomial model */
   ;
 /* Step 3: build polynomial set for antecedent */
   ;
 /* Step 3: build polynomial set for consequent */
   ;
 /* Step 4: calculate the */
   ;
 /* Step 5: calculate the Groebner base of */
   ;
 /* Step 6: calculate the Groebner base of */
if( ){
     return false; }
  if( ){
   return false; }
return ; /* Assertion does hold */
END ;
Algorithm 1: Assertion checking: .