C S 486
Download as PDF
Verification and Validation
Computer Science
College of Computational, Mathematical, & Physical Sciences
Course Description
Foundational topics in verification and validation; the application of logic to building correct systems. Covers logics to formally specify properties of systems, verifications of basic systems, and advanced topics in formal verification for complex systems.
When Taught
Winter
Min
3
Fixed/Max
3
Fixed
3
Fixed
0
Title
Formally reason about concurrent systems and executions
Learning Outcome
Formally reason about concurrent systems and executions
Title
Define correctness in concurrent systems
Learning Outcome
Define basic correctness principles of concurrent systems including deadlock, live-lock, safety, and general liveness.
Title
Analyze concurrent objects for correctness
Learning Outcome
Use tools to analyze concurrent objects for correctness and performance
Title
Learn best-practices for spin locks and monitors
Learning Outcome
Learn best-practices for spin locks and monitors
Title
Discuss wait-free versus lock-free implementations
Learning Outcome
Compare and contrast wait-free and lock-free properties in concurrent objects
Title
Understand and use concurrent data structures
Learning Outcome
Understand and use concurrent data structures
Title
Correctly use barriers and fences
Learning Outcome
Correctly use barriers and fences
Title
Have working knowledge of tools and techniques for testing c
Learning Outcome
Have working knowledge of tools and techniques for testing concurrent programs
Title
Be familiar to libraries to support concurrent programming i
Learning Outcome
Be familiar to libraries to support concurrent programming in C, C , C#, and Java
Title
Describe future trends in multi-processor programming
Learning Outcome
Describe future trends in multi-processor programming