A graph is a data structure that represents relationships between nodes. From any graph, we can define a flow. Formally, the flow of a graph is defined as follows. For a given graph $G= (V, E)$, flow $f$ is a mapping function $V \times V \rightarrow \mathcal{R}$. To be a flow, there are some requirements. If there is a capacity $c$ for edeges $c : V \times V \rightarrow \mathcal{R}$, which $(u,v) \in E$ iff $c(u,v)$ exists. Then flow of graph can’t exceed that capacity. Which means $f(u,v) \le c(u, v)$. Also it requires two variables which are source $s$ and destination $t$. Then $\sum\limits_{(i, v) \in E, v \neq s,t}f(i, v) = \sum\limits_{(v, j) \in E, v \neq s,t}f(v, j)$. Which means that every value goes in $v$ should go out from $v$ either. Then we can evaluate this flow $f$ as $\sum\limits_{(s, v) \in E}f(s, v) - \sum\limits_{(v, s) \in E}f(v, s)$ $=$ $\sum\limits_{(v, t) \in E}f(v, t) - \sum\limits_{(t, v) \in E}f(t, v)$.
Now, let’s think about a directed graph $G = (V,E)$ and some flow $f$ of $G$. Then we can decompose $f$ to some simple paths $P_1, \cdots, P_N$ and some cycles $C_1, \cdots, C_M$. Which $N + M \le \left\vert E \right\vert$.
Without loss of generality, we can assume the flow values are non-negative. In the proof of flow decomposition, this is not strictly necessary, but we assume it for simplicity.
Then, if $f$ has a cycle $C$, we can eliminate that $C$ from $f$ without changing value of the flow because it is a cycle. If we reduce every value of edges with smallest value inside of the $C$ then we can remove that cycle. Notice that we can reduce value of edges because we picked the smallest value inside of the $C$, cycle should be disappear after reducing values because one of edge in $C$ should be 0 after reducing values.
If we remove every cycle, it should have some paths because it has a flow. If we remove any flow that has the smallest value, value of flow $f$ should be 0 or some positive value. If it is the first case (flow of $f$ become 0) then it is decomposed. Otherwise, we can do this process again. Therefore, there sould be at least some cycles and paths.
Note that removing one path or cycle always eliminates at least one edge (the one with the minimum flow value becomes zero). Therefore, this process terminates in at most $\left\vert E \right\vert$ steps.