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: f a
, 
lambda: λx.A[x]
, 
subtract: n - 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: f a
, 
A-assign: A-assign(AModel)
, 
subtract: n - 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