Both motifs have a direct path and an indirect path . C1 coherent feed-forward loop uses three activating edges. I1 incoherent feed-forward loop activates and from , but lets repress . The AND condition means that the direct input must be active and the intermediate input must permit output: present for an activator, absent for a repressor. [ref]
Structure and function of the feed-forward loop network motif by Shmoolik Mangan and Uri Alon. 2003, AND-gated coherent and incoherent motifs
For a simple threshold model letThe coherent output obeys . Starting from under a sustained high input, . Provided , the gene expression delay isShorter input pulses do not turn on output gene expression. This is a persistence detector: it rejects brief positive inputs. Removing immediately removes the direct permission for gene expression, even if remains high. The concentration of subsequently decays with its own lifetime rather than vanishing instantly.
The incoherent output instead obeys . Gene expression begins immediately, then stops when accumulated repressor crosses threshold at . With zero initial output,A maintained stimulus therefore generates a pulse in this ideal Boolean model. Delayed inhibition can accelerate an early response and limit its duration. The ideal final zero output is conditional on crossing the repression threshold; graded response laws or basal gene expression can give a nonzero final level and need not adapt perfectly. If , the coherent circuit does not activate, while the incoherent circuit fails to terminate its gene expression. These boundary cases show why regulatory signs alone do not fix function.
AND-gated coherent and incoherent type-1 feed-forward loops
. Original regulatory graphs and threshold-model responses. The coherent motif delays production until an activator accumulates; the incoherent motif produces a pulse before a repressor accumulates. Output concentrations retain their finite decay times. Details. Past exam of the systems biology course of the University of Cambridge 2024 Paper 3 3 e Solution 2026-10-20
The quasi-steady-state approximation for sets . Substituting into the equation givesIts equilibrium concentration is thereforeFor constant input this is also the exact equilibrium of the full two-variable model: the fast- assumption is needed to replace the transient dynamics, not to calculate a fixed point.
Relative to the direct-activation result, . The extra activation gate suppresses the response at low input and can sharpen its rise. The high-input limit is , which need not reach because saturates at .
For the parameters in part (d), the following Python continuation plots the expression and changes each Hill constant separately:
def z_equilibrium(X, Kxy=1, Kxz=2, Kyz=1):
Yeq = 2 * hill(X, Kxy, 2)
return 3 * hill(X, Kxz, 4) * hill(Yeq, Kyz, 4)
X_grid = np.linspace(0, 5, 501)
plt.figure(figsize=(7, 4))
plt.plot(X_grid, 3*hill(X_grid, 2, 4), ":", label="Direct activation")
for parameters, label in [((1, 2, 1), "Baseline"),
((2, 2, 1), "Kxy=2"),
((1, 3, 1), "Kxz=3"),
((1, 2, 2), "Kyz=2")]:
plt.plot(X_grid, z_equilibrium(X_grid, *parameters), label=label)
plt.xlabel("X concentration")
plt.ylabel("Equilibrium Z")
plt.legend()
plt.tight_layout()
plt.show()Increasing lowers at fixed finite , delaying opening of the indirect gate. Increasing delays opening of the direct gate. Neither changes the limiting response as , provided the constants remain finite. Increasing makes a given less effective and also lowers the high-input plateau. These changes are visible in the preceding figure. At small , the response is proportional to , while both gates are far below saturation, explaining the increased low-input suppression.
For a persistence detector, retain finite dynamics and use, for example,with unit loss rates, , , and initially . On switching the input on, andThe time to reach the half-activation threshold of the indirect gate isAn isolated input pulse of duration ends well before this threshold; a duration-four pulse persists long enough to open the gate. The large but finite Hill coefficient makes this a graded filter, not a perfectly sharp cutoff. Once vanishes, its direct gate closes immediately and stops production of , which then decays with time constant one. The protein output itself does not drop discontinuously. This delayed-on, prompt-production-off mechanism is the characteristic persistence detector interpretation of an AND-type coherent feed-forward loop.[ref]
Structure and function of the feed-forward loop network motif by Shmoolik Mangan and Uri Alon. p. 11981, Equations for Gene Regulation Reactions; pp. 11983–11985, coherent FFL kinetics and Coherent FFLs as Persistence Detectors
This final Python continuation simulates both pulse durations. Each discontinuity is placed on the time grid and the input is held constant within each integration step:
def persistence_rhs(state, X):
Y, Z = state
return np.array([hill(X, 1, 4) - Y,
hill(X, 1, 4)*hill(Y, 0.7, 8) - Z])
def pulse_trajectory(duration, dt=0.005):
times = np.arange(round(8/dt) + 1) * dt
out = np.zeros((len(times), 2))
for j in range(len(times)-1):
X = 2.0 if 1 <= times[j] + dt/2 < 1 + duration else 0.0
# Each step is integrated with its constant input.
out[j+1] = integrate(lambda s: persistence_rhs(s, X),
out[j], [0, dt])[-1]
return times, out
fig, axes = plt.subplots(1, 2, figsize=(10, 4))
for duration in [0.25, 4]:
times, out = pulse_trajectory(duration)
axes[0].plot(times, out[:, 0], label=f"Y, duration {duration}")
axes[1].plot(times, out[:, 1], label=f"Z, duration {duration}")
print(duration, "maximum output", out[:, 1].max())
axes[0].axhline(0.7, color="black", linestyle=":")
for ax in axes:
ax.set_xlabel("Time")
ax.set_ylabel("Concentration")
ax.legend()
plt.tight_layout()
plt.show()The chosen example produces peak of about for the short pulse and for the long pulse. These are original illustrative simulations, not fitted experimental measurements.
Finally, the strict instantaneous- reduction used for the equilibrium calculation has no separate intermediate accumulation delay. Its remaining one-variable dynamics can still attenuate short pulses through ordinary output relaxation, but it cannot demonstrate the additional delay caused by finite buildup. The pulse test therefore uses the full two-variable model.
Shmoolik Mangan Created 2026-10-20 Updated 2026-11-05
Researcher in systems biology. With Uri Alon, Mangan analyzed the structure and function of the feed-forward loop, a recurring arrangement in which an upstream regulator acts on a target both directly and through another regulator.[ref]
Structure and function of the feed-forward loop network motif by Shmoolik Mangan and Uri Alon. Title, author list and reported study
Uri Alon Created 2026-10-20 Updated 2026-11-05
Researcher in systems biology. With Shmoolik Mangan, Alon studied how the feed-forward loop links a small network’s pattern of connections with its dynamical function, connecting biological regulation with quantitative models.[ref]
Structure and function of the feed-forward loop network motif by Shmoolik Mangan and Uri Alon. Title, author list and reported study
Portrait of Uri Alon
. Weizmann Institute of Science; public-domain release confirmed through Wikimedia VRT. Public domain (copyright-holder release). Source and usage information on the linked Wikimedia file page. Source.

