Experience Report on a Student-Organized AI Course
As curricula are mostly centered around the specializations of faculty members, students are often seen purely as consumers of knowledge.
As curricula are mostly centered around the specializations of faculty members, students are often seen purely as consumers of knowledge.
As the consequences of cyber attacks are becoming increasingly severe, ensuring the security of safety critical embedded software has become a necessity.
Courses on formal methods focus on two aspects: teaching formalisms and exemplary applications as well as teaching techniques for implementing tools such as model checkers.
Ensuring reliability and quality of software has become a necessity.
This white paper argues that formal methods need to be better rooted in higher education curricula for computer science and software engineering programmes of study.
The common formal methods workflow consists of formalising a model followed by applying model checking and proof techniques.
The B-Method has an interesting history, where language and tools have evolved over the years.
In this article, we present an approach to the ABZ 2020 case study, that differs from the ones usually presented at ABZ: Rather than using a (correct-by-construction) pproach following a formal method, we use MISRA C for a low-level implementation instead.
In this article, we present a concrete realisation of the ETCS Hybrid Level 3 concept, whose practical viability was evaluated in a field demonstration in 2017.
In this article, we introduce a denotational translation of the specification language Alloy to classical B.
The SMT-LIB language and the B language are both based on predicate logic and share the definition of several operators.
In this presentation, we discuss a recent publication on our course on model checking.
Courses on formal methods are often based on examples and case studies, supposed to show students how to apply formal methods in practice.
The common formal methods workflow consists of formalising a model followed by applying model checking and proof techniques.
The importance of coding guidelines is generally accepted throughout developers of every programming language.
Software is notoriously hard to test.
The B method for software and systems development together with the specification language B and its successor Event-B offer a rich history.
Employing formal methods for software development usually involves using a multitude of tools such as model checkers and provers.
The development and improvement of model checkers for the validation of hard- and software is an ongoing research topic in computer science.
Testing is an important aspect in professional software development, both to avoid and identify bugs as well as to increase maintainability.