private CLClause reduceClause ( final CLClause c ) { int lit ; int i ; for ( i = 0 ; i < c . lits ( ) . size ( ) ; i ++ ) { lit = c . lits ( ) . get ( i ) ; if ( val ( lit ) < 0 ) { break ; } } if ( i == c . lits ( ) . size ( ) ) { return c ; } assert this . addedlits . empty ( ) ; for ( i = 0 ; i < c . lits ( ) . size ( ) ; i ++ ) { lit = c . lits ( ) . get ( i ) ; if ( val ( lit ) >= 0 ) { this . addedlits . push ( lit ) ; } } final boolean redundant = c . redundant ( ) ; final int glue = c . glue ( ) ; deleteClause ( c ) ; final CLClause res = newClause ( redundant , glue ) ; this . addedlits . clear ( ) ; return res ; }
Removes false literals from a given clause .