forward substitution