Given an directed graph $F = (D, A)$ with a source $s$ and a sink $t$, together with $c: A \rightarrow \mathbb{R}$ a capacity on defined on the edges, the flow augmenting algorithm gives a flow $f: A \rightarrow \mathbb{R}$ such that $\sum f(a)_{out} - f(a)_{in}$ is maximum with $f(a)<c(a)$ for all $a \in A$.
In the algorithm there are these "backward edges" added every time you create a new graph $D_f$ using a s-t path you have chosen, my professor said the purpose of these edges is such that you may want to reduce the amount of flow on a particular edge on the path you started out with
I am not seeing why there is a need to reduce flow in a particular edge when finding the maximum flow in a network. Can someone give a concrete example for which there are "bad paths" that you can take while attempting to find the max s-t flow?
I'll briefly describe my example: Let $V = \{s, a, b, c, t\}$. Let $A = \{(s, a), (a, b), (b, c), (c, a), (b, t)\}$. You might want to draw this in order for it to make sense.
Now let the cost function c be defined as follows for all edges:
c(s, a) = 4
c(a, b) = 4
c(b, c) = 2
c(c, a) = 2
c(b, t) = 4.
It is easy to see that the max flow from s to t has value 4. However, it is possible (depending on the implementation of course) to get a flow $f$ like this at some point:
f(s, a) = 2
f(a, b) = 4
f(b, c) = 2
f(c, a) = 2
f(b, t) = 2.
$f$ has value 2 and is therefore not a max flow. But if you do not have those backward edges you will not find any s-t-path in the residual network.