anchor.diff:                  else
                      value * -1.0
   
  -        let encode(c:float, s:float) = 
  +        let Encode(c:float) (s:float) = 
               if(abs(s) < c) then
                   s
               else
  -                Copysign(1.0/c, s)
  -
  -        // Apply the givens rotation on 2 Sparsevectors
  -        let applyGivens( x : ResizeArray<(int*float)>, y : ResizeArray<(int*float)>) = 
  +                Copysign (1.0/c) s
  +
  +        /// Apply the givens rotation on 2 Sparsevectors
  +        let ApplyGivens (x : ResizeArray<(int*float)>) (y : ResizeArray<(int*float)>) = 
               let a = snd x.Front
               let b = snd y.Front
       
  
positive.code:                     sparseVector.Insert(0, entry)
              sparseVector
          
          // Returns "value" with the sign of "sign"
          let Copysign(value:float, sign:float) =
              if (sign >= 0.0) then
                  abs(value)
              else // sign is negative
  
negative.code:                     c <- 1.0 / sqrt(1.0 + tau * tau)
                      s <- c * tau
  
              // Rotate the start of each list
              x.Front <- (fst x.Front, c * a - s * b)
              y.PopFront |> ignore
      
  