code: public void backward() {
          double expectedRecallAdj = yAdj.getValue(0);               
          VarTensor[] varBeliefsAdjs = inf.getOutputAdj().varBeliefs;
          
          // Fill in the non-zero adjoints with the adjoint of the expected recall.
          for (Var var : vc.getVars()) {
              if (var.getType() == VarType.PREDICTED) {
                  varBeliefsAdjs[var.getId()].subtractValue(vc.getState(var), expectedRecallAdj);
              }
          }
      }
docs: Backward pass: dG/db(x_i) = dG/dy dy/db(x_i) = - dG/dy, \forall x_i \in x*.