incremental constraint propagation