I think
the postconditions from
v1 is a sequence of KV which is generated based on the sequence input by fill the filed key with 0
v2 is a sequence of int which projects the filed
It is not surporised that dafny needs you to provide a hints that
input == v2
is an intermediate assertion to infer v3 == sum(input)
.the postconditions from
var v1 := mapper(input); var v2,v3 := reduce(v1);
are:v1 is a sequence of KV which is generated based on the sequence input by fill the filed key with 0
v2 is a sequence of int which projects the filed
value
from v1sum (v2) == v3
It is not surporised that dafny needs you to provide a hints that
input == v2
in order to prove v3 == sum(input);