Meaning of the annotations for the proof of each method:
- local_polyh: uses a local linear ranking function for the binary unfolding with polyhedra
- local_mono: uses a local linear ranking function for the binary unfolding with monotonicity constraints
- global_affrnkfn: uses a global affine ranking function with polyhedra
- numerical: the ranking function uses numerical variables or fields
- structural: the ranking function uses reference variables or fields
- loop: the method seems to be part of a loop or recursion
- introduces: a call to the method might diverge
- inherits: a call to the method might diverge only because it calls an introducing method

All calls to these methods terminate:
                                             static Random.():void
                                             public static Random.random():int
[loop,numerical,structural,local_polyh]      public static ListDuplicate.duplicate(ObjectList):void
[loop,numerical,structural,local_polyh]      public static ObjectList.createList():ObjectList
                                             public static ListDuplicate.main(java.lang.String[]):void
                                             public ObjectList.(java.lang.Object,ObjectList):void

Some calls to these methods might not terminate:
  none

Termination ratio: 100.0%