- #1
craigs
- 2
- 0
Hi
I am doing a course on Program verification and am having trouble with the properties of summation, more specifically the rule of translation:
"Suppose function f maps values of type J to values of type K, and suppose g is a function that maps values of type K to values of type J. suppose further that f and g are inverses. That is, suppose that, for all j[itex]\in[/itex]J and k[itex]\in[/itex]K, (f.j=k) [itex]\equiv[/itex] (j=g.k)
[itex]\left\langle[/itex] [itex]\Sigma[/itex]k[itex]\in[/itex]K:R:T[itex]\right\rangle[/itex] = [itex]\left\langle[/itex] [itex]\Sigma[/itex]j[itex]\in[/itex]J:R[k:=f.j]:T[k:=f.j][itex]\right\rangle[/itex]
My question: I actually do not understand how the LHS of the equation equals the RHS.
Perhaps more specifically I am not sure how R[k:=f.j] and T[k:=f.j] appears on the right side, where does it come from?
I am doing a course on Program verification and am having trouble with the properties of summation, more specifically the rule of translation:
"Suppose function f maps values of type J to values of type K, and suppose g is a function that maps values of type K to values of type J. suppose further that f and g are inverses. That is, suppose that, for all j[itex]\in[/itex]J and k[itex]\in[/itex]K, (f.j=k) [itex]\equiv[/itex] (j=g.k)
[itex]\left\langle[/itex] [itex]\Sigma[/itex]k[itex]\in[/itex]K:R:T[itex]\right\rangle[/itex] = [itex]\left\langle[/itex] [itex]\Sigma[/itex]j[itex]\in[/itex]J:R[k:=f.j]:T[k:=f.j][itex]\right\rangle[/itex]
My question: I actually do not understand how the LHS of the equation equals the RHS.
Perhaps more specifically I am not sure how R[k:=f.j] and T[k:=f.j] appears on the right side, where does it come from?