מושגי ליבה
A novel methodology for proving the correctness of SQL implementations of OCL constraints using many-sorted first-order logic.
תקציר
The article discusses the importance of OCL constraints in model-driven development, highlighting the inefficiency of code-generators in producing SQL queries. It introduces a model-based methodology for proving the correctness of manually written SQL implementations of OCL constraints. The methodology involves mapping SQL language into many-sorted first-order logic and leveraging SMT solvers for automatic correctness proofs. Examples are provided to illustrate the approach.
Introduction
Model-driven engineering aims to develop software systems using models.
UML and OCL play crucial roles in defining software systems precisely.
Mapping OCL to MSFOL
OCL expressions are evaluated in object models.
Assignments and mappings from OCL to MSFOL are defined.
Mapping SQL to MSFOL
SQL is used for managing data in relational database systems.
The mapping context and correctness notions are explained.
Examples
Non-trivial examples demonstrate the correctness proofs of SQL implementations of OCL constraints.
Tool Support
Tools like OCL2MSFOL, SQL2MSFOL, and OCLSQLProver automate the transformation process.
Related Work
Comparison with existing mappings and tools in the field.
Conclusions and Future Work
Proposal of a novel methodology for proving correctness in SQL implementations of OCL constraints.
Future work includes extending the mapping and formal proof of correctness.
סטטיסטיקה
"In particular, for the corresponding correctness proof, we use the files exm1-C1, exm1-C2, and exm1-C3 at [20]."
"In particular, for the corresponding correctness proof, we use the files exm2-C1, exm2-C2, and exm2-C3 at [20]."
"In particular, for the corresponding correctness proof, we use the files exm3-C1, exm3-C2, and exm3-C3 at [20]."
"In particular, for the corresponding correctness proof, we use the files exm4-C1, exm4-C2, and exm4-C3 at [20]."
"In particular, for the corresponding correctness proof, we use the files exm5-C1, exm5-C2, and exm5-C3 at [20]."
ציטוטים
"Our methodology is based on a novel mapping, called SQL2-MSFOL, from a significant subset of the SQL language into many-sorted first-order logic."
"Moreover, by leveraging on the mapping OCL2-MSFOL from the OCL language into many-sorted first-order logic, we can use SMT solvers to automatically prove the correctness of SQL implementations of OCL constraints."