anchor.diff:  
   let backPropagate net =
   
  - let out_grads = List.map2 (gradient dervTanH) net.Outputs net.TargetOutputs
  + let out_grads = List.map2 (gradient deltaTanH) net.Outputs net.TargetOutputs
    let out_deltas = deltas net.N out_grads net.HiddenNetOutputs
    let out_prevDeltasWithM = List.map (sclarVectorMul net.M) net.OutputPrevDeltas
    let out_newDeltas = List.map2 addVectors out_deltas out_prevDeltasWithM
  
positive.code: let testing_samples = [| [ 0.692; 0.000; 0.000; 0.174; 0.000; 0.000; 0.000; ] |]
  let teaching_samples_inputs = [| [ 1.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 1.0; 0.0; 0.0;  ] |]
  
  let epoch = 1
  
  let trained =
   train
  
negative.code:  let out_bias_newDeltas = addVectors out_bias_deltas out_bias_prevDeltasWithM
   let out_bias_update = addVectors net.OutputBias out_bias_newDeltas
   
   let hid_grads = mulVectors (List.map deltaTanH net.HiddenNetOutputs) (List.map (dotProduct out_grads) (transpose net.HiddenToOutputWeights))
   let hid_deltas = deltas net.N hid_grads net.Inputs
   let hid_prevDeltasWithM = List.map (sclarVectorMul net.M) net.HiddenPrevDeltas
   let hid_newDeltas = List.map2 addVectors hid_deltas hid_prevDeltasWithM
  