Program Verification - Translation rule

In summary, the rule of translation states that the left hand side of the equation equals the right hand side.
  • #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?
 
Physics news on Phys.org
  • #2
craigs said:
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?
Please fix your LaTeX so that it is readable. I can't tell what you're trying to say, so I can't fix it.
 
  • #3
Sorry. Here is my next attempt:

"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]\langle[/itex] [itex]\Sigma[/itex]k[itex]\in[/itex]K:R:T[itex]\rangle[/itex] = [itex]\langle[/itex] [itex]\Sigma[/itex]j[itex]\in[/itex]J:R[k:=f.j]:T[k:=f.j][itex]\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?
 

Related to Program Verification - Translation rule

1. What is Program Verification?

Program Verification is the process of formally proving that a computer program meets its specified requirements. It involves using mathematical methods to analyze the program's source code and ensure that it behaves correctly under all possible inputs and conditions.

2. Why is Program Verification important?

Program Verification is crucial for ensuring the correctness and reliability of software systems. It helps detect and eliminate errors and bugs in the early stages of development, reducing the overall cost and time of the project. It also improves the quality and safety of software, especially in critical systems such as medical devices or transportation systems.

3. What are Translation rules in Program Verification?

Translation rules are a set of standard mathematical rules used in Program Verification to represent the behavior of a program. These rules define how the inputs to a program are translated into outputs and specify the expected behavior of the program in terms of preconditions and postconditions.

4. How do Translation rules help in Program Verification?

Translation rules provide a formal and precise way to specify the behavior of a program, making it easier to analyze and verify its correctness. They also help detect errors and inconsistencies in the program's design and implementation early on, making it easier to fix them before they cause bigger problems in the future.

5. What are some challenges in using Translation rules for Program Verification?

One of the main challenges in using Translation rules for Program Verification is the complexity and size of real-world programs. It can be time-consuming and computationally intensive to verify large programs using Translation rules. Another challenge is the difficulty in formally specifying the expected behavior of a program, as it may not always be clear and can be open to interpretation.

Similar threads

  • Engineering and Comp Sci Homework Help
Replies
10
Views
1K
  • Classical Physics
Replies
2
Views
990
  • Advanced Physics Homework Help
2
Replies
59
Views
7K
  • Special and General Relativity
Replies
1
Views
220
  • Introductory Physics Homework Help
Replies
3
Views
321
  • Engineering and Comp Sci Homework Help
Replies
1
Views
2K
  • Advanced Physics Homework Help
Replies
4
Views
991
  • Programming and Computer Science
Replies
2
Views
1K
  • Atomic and Condensed Matter
Replies
3
Views
1K
Replies
2
Views
1K
Back
Top