k_A: k_B:
A's formula: v_A - w_A * 2^(tmax-t) - θ(v_B - w_B*2^(tmax-t-1)) * c_A
where  v_A is the value to A of seeing D_B
       w_A is the cost of each unit of work to A
      tmax is the last step in the protocol
         t is the current step in the protocol
         θ is the Heaviside step function
       v_B is the value to B of seeing D_A
       w_B is the cost of each unit of work to B
       c_A is the cost to A of B seeing D_A

B's formula: v_B - w_B * 2^(tmax-t-1) - θ(v_A - w_A*2^(tmax-t)) * c_B
(B's formula is symmetric over A|B substitutions, except it starts one step later.)

v_A and w_A are fixed.
The big graph ranges over v_B as x and w_B as y. Mouseover to change values.
The smaller colour square ranges over k_A and k_B, as a percentage of v_A and v_B.
Green is fair, red unfair for A, purple unfair for B.

In the line graph A is blue and B is green.
The black line is zero marginal value.
The red line is where the protocol stops.
Agents always stop at their maximum marginal value.

Change the sliders to change k_A and k_B.
Starting value of k_A and k_B are 70%, which is a 30% margin on the exchange for both participants.
Lower margins (higher sliders) reduce the cases where fairness can be achieved.