 Each statement is analysed to see whether it changes the operands of one or more available expressions.This yields sets of available expressions at the end of each basic block, known as the outset in data flow analysis terms.An expression is available at the start of a basic block if it is available at the end of each of the basic block's predecessors.