anchor.diff:          let rb : float32[] = ctx.Download(bb)
   
           let validator = Array.zeroCreate ra.Length
  -        let mutable sum = 0.0f
  +        let mutable sum = 1.0f
           for i in 0 .. ra.Length - 1 do
  -            sum <- sum + ra.[i]
  +            sum <- sum * ra.[i]
               validator.[i] <- sum
   
           let isValid = Array.forall2 (=) rb validator
  
positive.code:             b.[i] <- a.[i] * 3.0 + c.[V2i(i,0)].X
          }
  
      [<LocalSize(X = 256)>]
      let scan (add : Expr<'a -> 'a -> 'a>) (zero : Expr<'a>) (input : 'a[]) (ret : 'a[]) =
          compute {
              let temp = allocateShared<'a> 256
  
              let gid = getGlobalId().X
              let lid = getLocalId().X
  
negative.code: 
      let private computeInstanceCache = System.Collections.Concurrent.ConcurrentDictionary<Context, GLCompute>()
  
      let private getGLCompute (ctx : Context) =
          computeInstanceCache.GetOrAdd(ctx, fun ctx -> GLCompute(ctx))
  
      type Kernel(prog : Program, localSize : Option<V3i>) =   
          let GLCompute = getGLCompute prog.Context
          
          
  
          let mutable isDisposed = 0
  
          let ctx = prog.Context
  