Nuprl Definition : A-shift-upto

A-shift-upto(AType;j) ==
  let AModel array-model(AType) in
      A-loop(AType;1;j;λi.(A-bind(AModel) (A-coerce(AModel) (A-fetch'(AModel) i)) 
                           in@i.(A-assign(AModel) (i 1) in@i))))



Definitions occuring in Statement :  A-loop: A-loop(AType;lo;hi;body) A-coerce: A-coerce(AModel) A-fetch': A-fetch'(AModel) A-assign: A-assign(AModel) A-bind: A-bind(AModel) array-model: array-model(AType) let: let apply: a lambda: λx.A[x] subtract: m natural_number: $n
Definitions occuring in definition :  let: let array-model: array-model(AType) A-loop: A-loop(AType;lo;hi;body) A-bind: A-bind(AModel) A-coerce: A-coerce(AModel) A-fetch': A-fetch'(AModel) lambda: λx.A[x] apply: a A-assign: A-assign(AModel) subtract: m natural_number: $n
FDL editor aliases :  A-shift-upto

Latex:
A-shift-upto(AType;j)  ==
    let  AModel  =  array-model(AType)  in
            A-loop(AType;1;j;\mlambda{}i.(A-bind(AModel)  (A-coerce(AModel)  (A-fetch'(AModel)  i)) 
                                                      (\mlambda{}in@i.(A-assign(AModel)  (i  -  1)  in@i))))



Date html generated: 2016_05_15-PM-02_21_16
Last ObjectModification: 2015_09_23-AM-07_38_54

Theory : monads


Home Index