fact: Definition afold_right A default (OP : A -> A -> A) (V : array A) := if length V =? 0 then default else foldi (fun i => OP (V.[length V - 1 - i])) 1 (length V) (V.[length V - 1]).
imports: Bool List PArray Int63 Ring63 ZArith Psatz