We want to find whether there is some cut that contains $e_1$ but not $e_2$.

1. Find the max flow f.
2. Decrease the capacity of $e_1$ to 0. Call this new network G'.
3. Find the max flow in G', f'. We saw in the homework that some cut contains $e_1$ iff f-f'=c(e). If this is not the case, return false.
4. Increase the capacity of $e_2$ in G'. Call this new network G''.
5. Find the max flow in G'', f''. We saw in the homework that every cut of G'contains $e_2$ iff f''>f'. If this is the case, return false.
6. Return true.

We want to show that we return true iff there is a cut with $e_1$ but not $e_2$:
We use the following lemma:
Lemma 1: C = (S,T) is a min cut of G' iff C is a min cut of G such that $e_1$ crosses C (i.e. $e_1=(u,v), u \in S, v \in T$).
Proof: => C's capacity in G' is f'. If it doesn't hold that $u \in S, v \in T$, then the value of the min cut of G would be f'. Therefore $u \in S, v \in T$, hence the capacity of C in G is f.
<= as C is a min cut in G, its capacity is f, and as $u \in S, v \in T$, its capacity of C in G' is exactly f'=f-c(e).

From this, we can see that:
Lemma 2: $e_2$ is in every min cut of G' iff every cut in G that contains $e_1$ must contain $e_2$.
Proof: => From => of Lemma 1.
<= From <= of Lemma 1.

When we decrease e1's capacity, the value of the new max-flow will decrease in exactly c(e1).
When we increase e2's capacity, the value of the new max-flow might increase in an amount different than the one we added to c(e2).
I know examples can be found to show the case, but will you please explain why this different occurs?

Let f be the size of the min cut in G. Let G' be the graph setting c(e)=0. Let G'' be the graph increasing the capacity of e to infinity. Let f' and f'' be the min cut of G' and G''.
Lemma 1: e is in SOME min cut of G iff f' = f-c(e).
=> let C be the min cut that e is in. Removing e decreases the capacity of C to f-c(e). This is clearly a min cut, as no cut can be smaller than f-c(e), as we only removed e from the graph.
<= let C be a min cut of G'. If e is not in C then the size of the min cut of G would also have been f-c(e).

Take any edge e not in a min cut and remove it from the graph - you will see that the capacity goes down by less than c(e)..

Lemma 2: e is in EVERY min cut of G iff f''>f.
=> the capacity of every min cut must increase.
<= assume there is some min cut that e is not in. It's capacity is still f, hence the max flow must be f.

Take any edge that is not in every min cut and increase its capacity, you will see there is no change in the flow.

As an example for both of these, you can take the graph
(s,a), (a,t), (s,t) with all capacities 1.