org.jmlspecs.samples.jmlrefman
Class SumArrayLoop
java.lang.Object
org.jmlspecs.samples.jmlrefman.SumArrayLoop
- public abstract class SumArrayLoop
- extends Object
An example of some simple loops with loop invariants
and variant functions specified.
Specifications inherited from class Object |
represents objectState <- org.jmlspecs.lang.JMLDataGroup.IT;
public represents _getClass <- \typeof(this); |
Method Summary |
static long |
sumArray(int[] a)
Return the sum of the argument array. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SumArrayLoop
public SumArrayLoop()
sumArray
public static long sumArray(int[] a)
- Return the sum of the argument array.
- Specifications:
-
old \bigint sum = ( \sum int j; 0 <= j&&j < a.length; a[j]);
requires -9223372036854775808 <= sum&&sum <= 9223372036854775807;
assignable \nothing;
ensures \result == sum;
JML is Copyright (C) 1998-2002 by Iowa State University and is distributed under the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This release depends on code from the MultiJava project and is based in part on the Kopi project Copyright (C) 1990-99 DMS Decision Management Systems Ges.m.b.H.