add: combinatorial check for  operator
add: update using function