Explore les tests basés sur des propriétés en utilisant QuickChick, en mettant l'accent sur l'exactitude des logiciels, les spécifications et le contrôle dynamique du flux d'information.
Introduit les bases des automates finis, y compris les types déterministes et non déterministes, les expressions régulières et les critères d'acceptation.
Explore les concepts d'ingénierie logicielle, en soulignant l'importance des tests et des spécifications claires pour assurer l'exactitude du logiciel.
Explore le flou, les oracles de bogues, les revues de codes et les techniques de test automatisé, soulignant l'importance de la désinfection pour détecter les défauts.
Explore les circuits logiques synchrones, la modélisation basée sur l'état, les techniques d'optimisation et la minimisation de l'état de la machine à l'état fini.
Couvre les concepts fondamentaux des systèmes logiques, y compris les circuits séquentiels et combinatoires, les diagrammes détat et les machines détat fini.
Examine la vérification formelle des conceptions de Chisel à l'aide de résolveurs SMT et couvre des exemples tels que les assertions différées et les preuves par induction.
Introduit la vérification formelle et ses avantages par rapport aux méthodes de test traditionnelles, en discutant de la démonstration automatique des théorèmes et en compilant les déclarations d'exactitude dans des conditions de vérification.
Explore les circuits logiques synchrones, les techniques de modélisation, la minimisation des états et l'optimisation des machines à états finis pour la réduction de surface.
Explore la vérification des modèles de détermination du temps, la planification U-Pool, l'analyse des pires temps d'exécution et la vérification statistique des modèles pour les systèmes cyber-physiques.
Examine les défis et les avantages de la vérification des compilateurs, en soulignant l'importance de la vérification des compilateurs pour les logiciels critiques.