Protobuf Verification Substitute Header for AI Validation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Verification and validation of AI applications using Protobuf are slow and time-consuming due to the complexity of Protobuf header files generated by standard code generators, which rely on proprietary libraries difficult to verify.
Innovation Solution
A verification substitute header file is generated based on Protobuf message types, using standard C/C++ libraries instead of proprietary ones, with added verification stubs to ensure memory safety, allowing verification to rely solely on standard C/C++ libraries.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If standard Protobuf code generator is used to generate header files, then Protobuf functionality is achieved, but verification and validation becomes slow and time-consuming
Solution Approach 1:
The patent creates a simplified copy of the Protobuf header file structure that contains only the essential message type definitions without the complex proprietary library implementations. This copy enables verification tools to analyze the data structures without being blocked by the complexity of the original generated headers, thus speeding up verification while maintaining accuracy
Solution Approach 2:
The invention extracts only the necessary message type definitions from the complex Protobuf generated header files, separating them from the proprietary library code. This extraction allows verification tools to focus on the data structures themselves without being hindered by the implementation details of the Protobuf runtime library
2Productivity
If proprietary Protobuf libraries are used, then full Protobuf functionality is available, but verification becomes difficult and time-consuming
Solution Approach 1:
The patent introduces an intermediary simplified header file that acts as a bridge between the application code and the verification tools. This intermediary contains message type definitions that are compatible with both the Protobuf runtime and verification tools, eliminating the need for verification tools to directly analyze the complex proprietary library code
Data Source
Figure 1A
Figure 1B
Figure 2
AI summary
A method, apparatus, and system for using a verification substitute header file in a verification of an application that uses Protocol Buffers (Protobuf) for data communication is disclosed. The operations comprise: obtaining one or more Protobuf message types from a Protobuf definition file; generating the verification substitute header file based on the Protobuf message types; adding one or more verification stubs to the verification substitute header file; including the verification substitute header file in source code of the application; and performing the verification of the application including the verification substitute header file.