To solve the homology feasibility problem with \(\Gamma \) , the algorithm of [1]} first computes several initial functions \(f\) 's, computes a specific function \(\bar{f}\)  for each initial function \(f\) , and then takes the join of \(\bar{f}\) 's.
Schrijver showed how to choose
such initial functions \(f\) 's so that the join of \(\bar{f}\) 's is a feasible homology function.
Given an initial function \(f\) , Schrijver showed how to compute \(\bar{f}\)  in \(O(n\eta |\Pi |)\)  time, where \(\eta \)  denotes the maximum length of \(\bar{f}\)  for all initial functions \(f\) .
Moreover, the initial functions can be computed in time quadratic in the number \(\chi \)  of face-edge paths \(\pi \)  of \(\Pi \)  with \(\phi (\pi )\notin \Gamma (\pi )\) , and the number of initial functions is linear in \(\chi \) .
Therefore, the total running time is \(O(\chi ^2 + n\cdot \eta \cdot \chi \cdot |\Pi |)\) .
