Formal Verification of Floating-Point Division Using Gappa: Arm Assembly Case Study
By
montalbano
The bagel they save for the regulars. Don't skim, savour.
Summary
This article is a technical tutorial on using Gappa, a formal verification tool, to analyze and verify floating-point division routines in Arm assembly code. It covers the basics of numerical error analysis for floating-point operations, specifically focusing on division implementations in Arm's optimized routines library. The content serves as a case study demonstrating how to apply formal verification techniques to ensure correctness in low-level numerical computing.
Key quotes
· 4 pulledWe have recently released a set of optimized assembly-language routines for basic floating-point arithmetic, in Arm Optimized Routines, under an open-source license.
These functions perform the same operations as hardware floating point instructions, for example addition, multiplication, and division.
Our optimized versions were previously part of the Arm Compiler for Embedded toolchain.
Learn the basics of using Gappa for numerical error analysis, using floating-point division in Arm machine code as a case study.
You might also wanna read
AI-Powered Translation of Logical Foundations Textbook Achieves 350x Speed-Up in Verified Software Engineering
Researchers present lf-lean, a verified translation of the entire Logical Foundations textbook from Rocq to Lean, accomplished using frontie
Using TLA+ Toolbox to Prove Liveness Properties for Xen vchan Protocol
The article details the author's experience using the TLA Toolbox's new liveness proof capabilities to verify the Xen vchan protocol. It exp
Analyzing AWS Outage Race Conditions with Model Checking and Formal Verification
The article describes an experiment using formal verification and model checking to reproduce a simplified version of the race condition tha
Cuq Framework: Formal Verification of Rust GPU Kernels Targeting PTX Architecture
Cuq is a research framework that provides the first formal semantics and verified translation for Rust GPU kernels targeting NVIDIA's PTX ar
C# Span<T>: A Guide to Type-Safe Memory Management and Performance Optimization
This article explains C# Span<T> and ReadOnlySpan<T>, introduced in C# 7.2 (2017) and fully supported in .NET Core. These structures provide
Flathub bans nearly all generative AI apps and submissions on Linux platform
Flathub, a popular Linux application platform, has updated its generative AI policy to effectively ban nearly all apps and submissions creat
