Several software systems are polyglot; that is, they comprise programs implemented in a combination of programming languages. Verifiers that directly run on mainstream programming languages are currently customized for single languages. Thus, to verify polyglot systems, one usually translates them into a common verification language or formalism on which the verifier runs. In this paper, we present an alternative approach, PolyVer, which employs abstraction, compositional reasoning, and synthesis to directly perform polyglot verification. PolyVer constructs a formal model of the original polyglot system as a transition system where the update functions associated with transitions are implemented in target languages such as C or Rust. To perform verification, PolyVer then connects a model checker for transition systems with language-specific verifiers (e.g., for C or Rust) using pre/post-condition contracts for the update functions. These contracts are automatically generated by synthesis oracles based on syntax-guided synthesis or large language models (LLMs), and checked by the language-specific verifiers. The contracts form abstractions of the update functions using which the model checker verifies the overall system-level property on the polyglot system model. PolyVer iterates between counterexample-guided abstraction-refinement (CEGAR) and counterexample-guided inductive synthesis (CEGIS) until the property is verified or a true system-level counterexample is found. We demonstrate the utility of PolyVer for verifying programs in the Lingua Franca polyglot language using the UCLID5 model checker connected with the CBMC and Kani verifiers for C and Rust respectively.
- рдкреЗрдкрд░ ID: 2503.03207
- рд╢реАрд░реНрд╖рдХ: PolyVer: A Compositional Approach for Polyglot System Modeling and Verification
- рд▓реЗрдЦрдХ: Pei-Wei Chen, Shaokai Lin, Adwait Godbole, Ramneet Singh, Elizabeth Polgreen, Edward A. Lee, Sanjit A. Seshia
- рд╡рд░реНрдЧреАрдХрд░рдг: cs.PL (рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдПрдВ)
- рдкреНрд░рдХрд╛рд╢рди рд╕рдордп/рд╕рдореНрдореЗрд▓рди: Formal Methods in Computer-Aided Design 2025
- рдкреЗрдкрд░ рд▓рд┐рдВрдХ: https://arxiv.org/abs/2503.03207
рдмрд╣реБрднрд╛рд╖реА рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдкреНрд░рдгрд╛рд▓рд┐рдпрд╛рдВ (polyglot systems) рдХрдИ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдП рдЧрдП рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд╕рдВрдпреЛрдЬрди рд╕реЗ рдмрдиреА рд╣реЛрддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореМрдЬреВрджрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕рддреНрдпрд╛рдкрдХ рдЖрдорддреМрд░ рдкрд░ рдХреЗрд╡рд▓ рдПрдХрд▓ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдорддреМрд░ рдкрд░ рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕рддреНрдпрд╛рдкрди рднрд╛рд╖рд╛ рдпрд╛ рдФрдкрдЪрд╛рд░рд┐рдХ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпрд╣ рдкреЗрдкрд░ PolyVer рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рд╕реАрдзреЗ рдмрд╣реБрднрд╛рд╖реА рд╕рддреНрдпрд╛рдкрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдореВрд░реНрддрддрд╛, рд╕рдВрдпреЛрдЬрди рддрд░реНрдХ рдФрд░ рд╕рдВрд╢реНрд▓реЗрд╖рдг рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рддрд░реАрдХрд╛ рд╣реИред PolyVer рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЛ рд╕рдВрдХреНрд░рдордг рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рдФрдкрдЪрд╛рд░рд┐рдХ рдореЙрдбрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рд╕рдВрдХреНрд░рдордг-рд╕рдВрдмрдВрдзрд┐рдд рдЕрдкрдбреЗрдЯ рдлрд╝рдВрдХреНрд╢рди рд▓рдХреНрд╖реНрдп рднрд╛рд╖рд╛ (рдЬреИрд╕реЗ C рдпрд╛ Rust) рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╕рддреНрдпрд╛рдкрди рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, PolyVer рдЕрдкрдбреЗрдЯ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкреВрд░реНрд╡/рдкрд╢реНрдЪ рд╢рд░реНрдд рдЕрдиреБрдмрдВрдзреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдВрдХреНрд░рдордг рдкреНрд░рдгрд╛рд▓реА рдХреЗ рдореЙрдбрд▓ рдЪреЗрдХрд░ рдХреЛ рднрд╛рд╖рд╛-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рддреНрдпрд╛рдкрдХ рд╕реЗ рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдпреЗ рдЕрдиреБрдмрдВрдз рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕-рдирд┐рд░реНрджреЗрд╢рд┐рдд рд╕рдВрд╢реНрд▓реЗрд╖рдг рдпрд╛ рдмрдбрд╝реЗ рднрд╛рд╖рд╛ рдореЙрдбрд▓ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдВрд╢реНрд▓реЗрд╖рдг рдУрд░реЗрдХрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрддреНрдкрдиреНрди рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рднрд╛рд╖рд╛-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рддреНрдпрд╛рдкрдХ рджреНрд╡рд╛рд░рд╛ рдЬрд╛рдВрдЪреЗ рдЬрд╛рддреЗ рд╣реИрдВред
рдЖрдзреБрдирд┐рдХ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдкреНрд░рдгрд╛рд▓рд┐рдпрд╛рдВ рддреЗрдЬреА рд╕реЗ рдмрд╣реБрднрд╛рд╖реА рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЛ рдЕрдкрдирд╛ рд░рд╣реА рд╣реИрдВ, рдЬреИрд╕реЗ ROS2, Lingua Franca рдЬреИрд╕реЗ рдврд╛рдВрдЪреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЙрдкрдпреБрдХреНрдд рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдЪреБрдирдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рд▓рдЪреАрд▓рд╛рдкрди рд╕рддреНрдпрд╛рдкрди рдЪреБрдиреМрддрд┐рдпрд╛рдВ рд▓рд╛рддрд╛ рд╣реИ:
- рднрд╛рд╖рд╛ рд╢рдмреНрджрд╛рд░реНрде рдЕрдВрддрд░: рд╡рд┐рднрд┐рдиреНрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ рдФрд░ рд╢рдмреНрджрд╛рд░реНрде рд╣реЛрддреЗ рд╣реИрдВ, рдЬреИрд╕реЗ Rust рдХрд╛
saturating_add рдлрд╝рдВрдХреНрд╢рди рдУрд╡рд░рдлреНрд▓реЛ рдкрд░ рдЕрдзрд┐рдХрддрдо рдорд╛рди рддрдХ рд╕рдВрддреГрдкреНрдд рд╣реЛрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ C рдХрд╛ рдЬреЛрдбрд╝ рд▓рдкреЗрдЯ рд╕рдХрддрд╛ рд╣реИред - рдореМрдЬреВрджрд╛ рд╕рддреНрдпрд╛рдкрдХ рд╕реАрдорд╛рдПрдВ: рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕рддреНрдпрд╛рдкрдХ (рдЬреИрд╕реЗ C рдХреЗ рд▓рд┐рдП CBMC, Rust рдХреЗ рд▓рд┐рдП Kani) рдПрдХрд▓ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рд╣реИрдВ рдФрд░ рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЛ рд╕реАрдзреЗ рд╕рдВрднрд╛рд▓ рдирд╣реАрдВ рд╕рдХрддреЗред
- рдЕрдиреБрд╡рд╛рдж рдЬрдЯрд┐рд▓рддрд╛: рд╕рдВрдкреВрд░реНрдг рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдПрдХрд▓ рд╕рддреНрдпрд╛рдкрди рднрд╛рд╖рд╛ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдкреВрд░реНрдг рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ рдФрд░ рд╢рдмреНрджрд╛рд░реНрде рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬреЛ рдЖрдзреБрдирд┐рдХ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд╖реЗрдзрд╛рддреНрдордХ рд╣реИред
рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рджреЛрд╖реЛрдВ рдХреЗ рдЬреЛрдЦрд┐рдо рдХреЛ рдмрдврд╝рд╛рддреА рд╣реИ, рдФрд░ рд╕реБрд░рдХреНрд╖рд╛-рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ (рдЬреИрд╕реЗ рд╕реНрд╡рд╛рдпрддреНрдд рдбреНрд░рд╛рдЗрд╡рд┐рдВрдЧ, рдПрдпрд░реЛрд╕реНрдкреЗрд╕), рдФрдкрдЪрд╛рд░рд┐рдХ рд╕рддреНрдпрд╛рдкрди рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХрд┐рдП рдЧрдП рдордЬрдмреВрдд рдЧрд╛рд░рдВрдЯреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рди рдХрд┐ рдХреЗрд╡рд▓ рдкрд░реАрдХреНрд╖рдг рдЬреИрд╕реА рдЕрдзреВрд░реА рд╡рд┐рдзрд┐рдпреЛрдВ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ред
- рдПрдХреАрдХреГрдд рдЕрдиреБрд╡рд╛рдж рд╡рд┐рдзрд┐: рдкреНрд░рддреНрдпреЗрдХ рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рд╕рдВрдкреВрд░реНрдг рдХрдВрдкрд╛рдЗрд▓рд░ рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪрд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
- рд╢рдмреНрджрд╛рд░реНрде рд╕рдВрд░рдХреНрд╖рдг рдХрдард┐рдирд╛рдИ: рд▓рдХреНрд╖реНрдп рд╕рддреНрдпрд╛рдкрди рднрд╛рд╖рд╛ рдореЗрдВ рд╕реНрд░реЛрдд рднрд╛рд╖рд╛ рдХреЗ рд╕рднреА рднрд╛рд╖рд╛-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдирд┐рд░реНрдорд╛рдгреЛрдВ рдХреЛ рд╡рдлрд╛рджрд╛рд░реА рд╕реЗ рдХреИрдкреНрдЪрд░ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ
- рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА рд╕рдорд╕реНрдпрд╛рдПрдВ: рдЙрддреНрдкрдиреНрди рд╕рддреНрдпрд╛рдкрди рд╕рдорд╕реНрдпрд╛ рдмрд╣реБрдд рдмрдбрд╝реА рд╣реЛ рд╕рдХрддреА рд╣реИ
- рдмрд╣реБрднрд╛рд╖реА рд╕рддреНрдпрд╛рдкрди рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдФрдкрдЪрд╛рд░рд┐рдХреАрдХрд░рдг: рдкрд╣рд▓реА рдмрд╛рд░ рдмрд╣реБрднрд╛рд╖реА рд╕рддреНрдпрд╛рдкрди рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд░реВрдк рд╕реЗ рдФрдкрдЪрд╛рд░рд┐рдХ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдФрд░ рдХрдИ рднрд╛рд╖рд╛-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рддреНрдпрд╛рдкрдХреЛрдВ рдХреЛ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХрд╛ рд╕рдВрдпреЛрдЬрди рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ред
- рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрдиреБрдмрдВрдз рд╕рдВрд╢реНрд▓реЗрд╖рдг: рдордзреНрдпрд╡рд░реНрддреА рднрд╛рд╖рд╛ рдФрд░ CEGIS-CEGAR рдЪрдХреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреВрд░реНрд╡/рдкрд╢реНрдЪ рд╢рд░реНрдд рдЕрдиреБрдмрдВрдзреЛрдВ рдХреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╕рдВрд╢реНрд▓реЗрд╖рдг рдФрд░ рдкрд░рд┐рд╢реЛрдзрди рд╡рд┐рдзрд┐ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХреА рдЧрдИ, рдЬреЛ рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕-рдирд┐рд░реНрджреЗрд╢рд┐рдд рд╕рдВрд╢реНрд▓реЗрд╖рдг рдФрд░ рдмрдбрд╝реЗ рднрд╛рд╖рд╛ рдореЙрдбрд▓ рдХреЛ рд╕рдВрд╢реНрд▓реЗрд╖рдг рдУрд░реЗрдХрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИред
- рдЙрдкрдХрд░рдг рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди: UCLID5 рдХреЗ рдЖрдзрд╛рд░ рдкрд░ PolyVer рдЙрдкрдХрд░рдг рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЬреЛ C рдФрд░ Rust рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, CBMC рдФрд░ Kani рд╕рддреНрдпрд╛рдкрдХреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ, рдпрд╣ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ LLM-рдЖрдзрд╛рд░рд┐рдд рд╕рдВрд╢реНрд▓реЗрд╖рдг рдУрд░реЗрдХрд▓ рд╢реБрджреНрдз рдкреНрд░рддреАрдХрд╛рддреНрдордХ рд╕рдВрд╢реНрд▓реЗрд╖рдг рд╡рд┐рдзрд┐ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИред
- рдХреЗрд╕ рд╕реНрдЯрдбреА рдФрд░ рдореВрд▓реНрдпрд╛рдВрдХрди: Lingua Franca рд╕рдордиреНрд╡рдп рднрд╛рд╖рд╛ рдХреЗ рд▓рд┐рдП рд╕рддреНрдпрд╛рдкрдХ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛, C рдФрд░ Rust рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рд╡рд╛рд▓реА рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛, рд╕рд╛рде рд╣реА C рднрд╛рд╖рд╛ рдХреЗ рдЯреБрдХрдбрд╝реЗ рдЬреЛ рдкрд┐рдЫрд▓реЗ рдХрд╛рдо рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рдереЗред
рдЗрдирдкреБрдЯ: рдмрд╣реБрднрд╛рд╖реА рдореЙрдбрд▓ M = (Q,V,IтВА,T,F) рдФрд░ рдкреНрд░рдгрд╛рд▓реА рдЧреБрдг ╧Ж
рдЖрдЙрдЯрдкреБрдЯ: рд╕рддреНрдпрд╛рдкрди рдкрд░рд┐рдгрд╛рдо (рдкрд╛рд╕/рд╡рд┐рдлрд▓) рдФрд░ рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рддрд┐рдЙрджрд╛рд╣рд░рдг рдЯреНрд░реЗрд╕
рдЙрджреНрджреЗрд╢реНрдп: рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдХрд┐ M тКи ╧Ж рд╕рддреНрдп рд╣реИ рдпрд╛ рдирд╣реАрдВ
рдЬрд╣рд╛рдВ:
- Q: рдореЛрдб рдХрд╛ рд╕рдореБрдЪреНрдЪрдп
- V: рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рдЪрд░ рдХрд╛ рд╕рдореБрдЪреНрдЪрдп
- IтВА: рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЕрд╡рд╕реНрдерд╛ рдХрд╛ рд╕рдореБрдЪреНрдЪрдп
- T: рдореЛрдб рд╕рдВрдХреНрд░рдордг рдХрд╛ рд╕рдореБрдЪреНрдЪрдп
- F: рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╕рдореБрдЪреНрдЪрдп
PolyVer рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЛ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдЕрд╡рд╕реНрдерд╛ рдорд╢реАрди рдХреЗ рд░реВрдк рдореЗрдВ рдореЙрдбрд▓ рдХрд░рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ:
- рдЕрд╡рд╕реНрдерд╛рдПрдВ рдореЛрдб рдФрд░ рдЪрд░ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рд╕реЗ рдмрдиреА рд╣реЛрддреА рд╣реИрдВ
- рд╕рдВрдХреНрд░рдордг рдЧрд╛рд░реНрдб рд╢рд░реНрддреЛрдВ рдФрд░ рдЕрдкрдбреЗрдЯ рд╕рдВрдмрдВрдзреЛрдВ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реЛрддреЗ рд╣реИрдВ
- рдЕрдкрдбреЗрдЯ рд╕рдВрдмрдВрдз рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЙрд▓ рдЕрдиреБрдХреНрд░рдореЛрдВ рдореЗрдВ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ
рдореБрдЦреНрдп рдирд╡рд╛рдЪрд╛рд░ рд╡рд┐рднрд┐рдиреНрди рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдмреАрдЪ "рдЧреЛрдВрдж" рдХреЗ рд░реВрдк рдореЗрдВ рдордзреНрдпрд╡рд░реНрддреА рднрд╛рд╖рд╛ L* рдХрд╛ рдкрд░рд┐рдЪрдп рд╣реИ:
- рдЕрдиреБрдмрдВрдз L* рдореЗрдВ рд▓рд┐рдЦреЗ рдЬрд╛рддреЗ рд╣реИрдВ
- рд╢рдмреНрджрд╛рд░реНрде-рд╕рдВрд░рдХреНрд╖рдг рд╕рдВрдХрд▓рди compL рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдареЛрд╕ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд░реВрдкрд╛рдВрддрд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ
- рдкреВрд░реНрдг рднрд╛рд╖рд╛ рдЕрдиреБрд╡рд╛рдж рдХреА рдЬрдЯрд┐рд▓рддрд╛ рд╕реЗ рдмрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЛрд░ рджреЛ-рд╕реНрддрд░реАрдп рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдЪрдХреНрд░ рд╣реИ:
рдмрд╛рд╣рд░реА CEGAR рдЪрдХреНрд░:
- рд╡рд░реНрддрдорд╛рди рдЕрдиреБрдмрдВрдз рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдореВрд░реНрдд рдореЙрдбрд▓ M' рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВ
- рдореЙрдбрд▓ рдЪреЗрдХрд░ M' тКи ╧Ж рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ
- рдпрджрд┐ рд╡рд┐рдлрд▓ рд╣реЛ, рддреЛ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдкреНрд░рддрд┐рдЙрджрд╛рд╣рд░рдг рдЭреВрдард╛ рд╣реИ
- рдпрджрд┐ рдЭреВрдард╛ рд╣реИ, рддреЛ рдЕрдиреБрдмрдВрдз рдХреЛ рдкрд░рд┐рд╢реЛрдзрд┐рдд рдХрд░реЗрдВ; рдЕрдиреНрдпрдерд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рддрд┐рдЙрджрд╛рд╣рд░рдг рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░реЗрдВ
рдЖрдВрддрд░рд┐рдХ CEGIS рдЪрдХреНрд░:
- рд╕рдВрд╢реНрд▓реЗрд╖рдг рдУрд░реЗрдХрд▓ рдЙрдореНрдореАрджрд╡рд╛рд░ рдЕрдиреБрдмрдВрдз рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ
- рд╕рддреНрдпрд╛рдкрди рдУрд░реЗрдХрд▓ рдЕрдиреБрдмрдВрдз рдХреА рд╡реИрдзрддрд╛ рдЬрд╛рдВрдЪрддрд╛ рд╣реИ
- рдпрджрд┐ рдЕрдорд╛рдиреНрдп рд╣реИ, рддреЛ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдЙрджрд╛рд╣рд░рдг рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдкреБрдирдГ рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХрд░реЗрдВ
рдПрдХреАрдХреГрдд рдЕрдиреБрд╡рд╛рдж рдХреЗ рд╡рд┐рдкрд░реАрдд, PolyVer "рд╡рд┐рднрд╛рдЬрд┐рдд рдФрд░ рдЬреАрддреЛ" рд░рдгрдиреАрддрд┐ рдЕрдкрдирд╛рддрд╛ рд╣реИ:
- рдЕрдиреБрдмрдВрдз рдЕрдореВрд░реНрддрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдЕрдореВрд░реНрдд рдХрд░реЗрдВ
- рднрд╛рд╖рд╛-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рддреНрдпрд╛рдкрдХ рдЕрдиреБрдмрдВрдз рдХреА рд╡реИрдзрддрд╛ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ
- рдореЙрдбрд▓ рдЪреЗрдХрд░ рдкреНрд░рдгрд╛рд▓реА-рд╕реНрддрд░реАрдп рдЧреБрдгреЛрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ
рдХрдИ рд╕рдВрд╢реНрд▓реЗрд╖рдг рдУрд░реЗрдХрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ:
- LLM-рдЖрдзрд╛рд░рд┐рдд рд╕рдВрд╢реНрд▓реЗрд╖рдХ: рд╡рд┐рдЪрд╛рд░ рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╕рдВрдХреЗрдд рдФрд░ Python DSL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ
- SyGuS/SyMO рд╕рдВрд╢реНрд▓реЗрд╖рдХ: рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЙрджрд╛рд╣рд░рдг рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдиреНрдХреЛрдб рдХрд░рддрд╛ рд╣реИ
{V = d} C {V' тЙа d'} рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдХреЗ рдкреНрд░рддрд┐рдЙрджрд╛рд╣рд░рдг рдЯреНрд░реЗрд╕ рдХреА рдкрд╣реБрдВрдЪ рдпреЛрдЧреНрдпрддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рддрд┐рдЙрджрд╛рд╣рд░рдг рдФрд░ рдЭреВрдареЗ рдкреНрд░рддрд┐рдЙрджрд╛рд╣рд░рдг рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХрд░рддрд╛ рд╣реИред
- LFVerifier рдмреЗрдВрдЪрдорд╛рд░реНрдХ: 22 Lingua Franca рдкреНрд░реЛрдЧреНрд░рд╛рдо, рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд C рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд╕рд╛рде
- рдкреВрд░реНрдг LF рдЙрджрд╛рд╣рд░рдг: LED рдирд┐рдпрдВрддреНрд░рдХ, рдкрд░реНрд╡рддрд╛рд░реЛрд╣рдг рд░реЛрдмреЛрдЯ, рдЙрдкрдЧреНрд░рд╣ рдореБрджреНрд░рд╛ рдирд┐рдпрдВрддреНрд░рдХ рдЖрджрд┐ рдПрдореНрдмреЗрдбреЗрдб рдкреНрд░рдгрд╛рд▓рд┐рдпрд╛рдВ
- рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓рд┐рдпрд╛рдВ: C/Rust рдорд┐рд╢реНрд░рд┐рдд LF рдкреНрд░реЛрдЧреНрд░рд╛рдо, ROS2 рдЕрдиреБрдкреНрд░рдпреЛрдЧ, FFI рдХреЙрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдо
- рд╕рдВрд╢реНрд▓реЗрд╖рдг рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╕рдВрдЦреНрдпрд╛ (IS: CEGIS рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐, AR: CEGAR рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐)
- рдЪрд▓рдиреЗ рдХрд╛ рд╕рдордп (SOT: рд╕рдВрд╢реНрд▓реЗрд╖рдг рдУрд░реЗрдХрд▓ рд╕рдордп, VOT: рд╕рддреНрдпрд╛рдкрди рдУрд░реЗрдХрд▓ рд╕рдордп, UT: UCLID5 рд╕рдордп)
- рд╕рддреНрдпрд╛рдкрди рд╕рдлрд▓рддрд╛ рджрд░
LFVerifier15 рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛, рдЬреЛ LF рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рдПрдХрдорд╛рддреНрд░ рдЬреНрдЮрд╛рдд рдЕрдВрдд-рд╕реЗ-рдЕрдВрдд рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЙрдкрдХрд░рдг рд╣реИред
- OpenAI o1-mini рдХреЛ LLM рд╕рдВрд╢реНрд▓реЗрд╖рдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдкреНрд░рддрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ 3 рд╕рдорд╛рдирд╛рдВрддрд░ рдХреНрд╡реЗрд░реА
- CBMC-6.3.1, Kani-0.56.0, z3-4.8.7 рд╕рддреНрдпрд╛рдкрди рдмреИрдХрдПрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ
- 3.7GHz Intel Core i9 рдорд╢реАрди, 62GB RAM
22 рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдореЗрдВ:
- PolyVer рд╕рднреА рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИ, LFVerifier TrafficLight рдЙрджрд╛рд╣рд░рдг рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛
- 18 рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдПрдХрд▓ CEGIS рдЪрдХреНрд░ рдореЗрдВ рд╕рд╣реА рдЕрдиреБрдмрдВрдз рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд╕рдд 37 рд╕реЗрдХрдВрдб
- рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреБрд▓ рдЪрд▓рдиреЗ рдХрд╛ рд╕рдордп рдзреАрдорд╛ рд╣реИ (рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЕрдиреБрдмрдВрдз рд╕рдВрд╢реНрд▓реЗрд╖рдг рд╕рдордп рджреНрд╡рд╛рд░рд╛ рдкреНрд░рднрд╛рд╡рд┐рдд), рд▓реЗрдХрд┐рди рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЧреБрдгрд╛рддреНрдордХ рд╕реБрдзрд╛рд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ
рдкреВрд░реНрдг C рдХреЛрдб рд╡рд╛рд▓реА рдПрдореНрдмреЗрдбреЗрдб рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛:
- LED рдирд┐рдпрдВрддреНрд░рдХ: 1 рдкреНрд░рдХреНрд░рд┐рдпрд╛, 123 рдкрдВрдХреНрддрд┐рдпрд╛рдВ C рдХреЛрдб, 31.0 рд╕реЗрдХрдВрдб рд╕рдВрд╢реНрд▓реЗрд╖рдг рд╕рдордп
- рдкрд░реНрд╡рддрд╛рд░реЛрд╣рдг рд░реЛрдмреЛрдЯ: 12 рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдВ, 75 рдкрдВрдХреНрддрд┐рдпрд╛рдВ C/Rust рдХреЛрдб, 685.4 рд╕реЗрдХрдВрдб рд╕рдВрд╢реНрд▓реЗрд╖рдг рд╕рдордп
- рдЙрдкрдЧреНрд░рд╣ рдирд┐рдпрдВрддреНрд░рдХ: 6 рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдВ, 424 рдкрдВрдХреНрддрд┐рдпрд╛рдВ C рдХреЛрдб, 729.0 рд╕реЗрдХрдВрдб рд╕рдВрд╢реНрд▓реЗрд╖рдг рд╕рдордп
рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛:
- C/Rust рдорд┐рд╢реНрд░рд┐рдд LF рдкреНрд░реЛрдЧреНрд░рд╛рдо
- ROS2 рд╕реЗрд╡рд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ
- FFI рдХреНрд░реЙрд╕-рднрд╛рд╖рд╛ рдХреЙрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдо
- LLM рдкреНрд░рддреАрдХрд╛рддреНрдордХ рд╡рд┐рдзрд┐ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИ: SyGuS/SyMO рд╕реЙрд▓реНрд╡рд░ рдХреЛ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ CEGAR рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рдЕрдХреНрд╕рд░ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ
- рдЕрдиреБрдмрдВрдз рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХреА рдЪреБрдиреМрддрд┐рдпрд╛рдВ: рдЬрдЯрд┐рд▓ рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рд╡рд╛рд╣ рдФрд░ рдбреЗрдЯрд╛ рдирд┐рд░реНрднрд░рддрд╛ рд╡рд╛рд▓реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдЕрдзрд┐рдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
- рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХрддрд╛ рд╕рддреНрдпрд╛рдкрди: рдЦрд┐рд▓реМрдирд╛ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рдмрдЬрд╛рдп рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛрдб рдХреЛ рд╕рдВрднрд╛рд▓ рд╕рдХрддрд╛ рд╣реИ
- рдореИрдиреБрдЕрд▓ рдЕрдиреБрд╡рд╛рдж рд╡рд┐рдзрд┐: Cook рдЖрджрд┐ рдиреЗ Xen рд╣рд╛рдЗрдкрд░рд╡рд┐рдЬрд░ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕реЗрдВрдмрд▓реА рдХреЛрдб рдХреЛ C рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд┐рдпрд╛
- рдЦрдВрдб рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрдиреБрд╡рд╛рдж: LFVerifier рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ C рдЦрдВрдбреЛрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрди рднрд╛рд╖рд╛ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рддрд╛ рд╣реИ
- рдмреНрд▓реИрдХ-рдмреЙрдХреНрд╕ рд╡рд┐рдзрд┐: рдЗрдирдкреБрдЯ-рдЖрдЙрдЯрдкреБрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕реЗ рд╕рд╛рд░рд╛рдВрд╢ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рддрд╛ рд╣реИ
- Hoare рддрд░реНрдХ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╕рдВрдпреЛрдЬрди рд╕рддреНрдпрд╛рдкрди рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдПрдХрд▓-рднрд╛рд╖рд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдкрд░ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ
- рдЕрдореВрд░реНрдд рд╡реНрдпрд╛рдЦреНрдпрд╛ рдФрд░ CEGAR рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреВрд░реНрд╡/рдкрд╢реНрдЪ рд╢рд░реНрдд рд╕реАрдЦрдирд╛
- рдЧреБрдг-рдирд┐рд░реНрджреЗрд╢рд┐рдд рдЕрдиреБрдмрдВрдз рдЕрдиреБрдорд╛рди рд╡рд┐рдзрд┐
- рдмрд╛рдзрд╛ Horn рдЦрдВрдб рд╕реЙрд▓реНрд╡рд░
- рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд╕реАрдЦрдиреЗ рдореЗрдВ рд╣рд╛рд▓ рдХреЗ LLM рдЕрдиреБрдкреНрд░рдпреЛрдЧ
- PolyVer рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓реА рд╕рддреНрдпрд╛рдкрди рдХреА рдореБрдЦреНрдп рдЪреБрдиреМрддрд┐рдпреЛрдВ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ
- рд╕рдВрдпреЛрдЬрди рд╡рд┐рдзрд┐ рдкреВрд░реНрдг рднрд╛рд╖рд╛ рдЕрдиреБрд╡рд╛рдж рдХреА рдЬрдЯрд┐рд▓рддрд╛ рд╕реЗ рдмрдЪрд╛рддреА рд╣реИ
- рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрдиреБрдмрдВрдз рд╕рдВрд╢реНрд▓реЗрд╖рдг рд╡рд┐рдзрд┐ рдХреЛ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдмрдирд╛рддрд╛ рд╣реИ
- LLM-рдЖрдзрд╛рд░рд┐рдд рд╕рдВрд╢реНрд▓реЗрд╖рдХ рдкрд╛рд░рдВрдкрд░рд┐рдХ рдкреНрд░рддреАрдХрд╛рддреНрдордХ рд╡рд┐рдзрд┐ рд╕реЗ рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рдХрд░рддреЗ рд╣реИрдВ
- рд╕рдорд╛рдкреНрддрд┐: рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╕рдорд╛рдкреНрддрд┐ рдХреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рд╕рдВрд╢реНрд▓реЗрд╖рдг рдУрд░реЗрдХрд▓ рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ
- рднрд╛рд╖рд╛ рд╕рдорд░реНрдерди: рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЗрд╡рд▓ C рдФрд░ Rust рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЕрдиреНрдп рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рддреНрдпрд╛рдкрди рдУрд░реЗрдХрд▓ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
- рдЕрдиреБрдмрдВрдз рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐: рдордзреНрдпрд╡рд░реНрддреА рднрд╛рд╖рд╛ L* рдХреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреНрд╖рдорддрд╛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдП рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рдЧреБрдгреЛрдВ рдХреА рдЬрдЯрд┐рд▓рддрд╛ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рддреА рд╣реИ
- рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА: рдмрдбрд╝реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдмрдВрдз рд╕рдВрд╢реНрд▓реЗрд╖рдг рд╕рдордп рдПрдХ рдмрд╛рдзрд╛ рдмрди рд╕рдХрддрд╛ рд╣реИ
- рдЕрдиреНрдп рдмрд╣реБрднрд╛рд╖реА рд╡рд┐рддрд░рд┐рдд рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдФрд░ рд░реЛрдмреЛрдЯрд┐рдХ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рддрдХ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдирд╛
- рдХреЛрдб рдЕрдиреБрд╡рд╛рдж рдХреЗ рдФрдкрдЪрд╛рд░рд┐рдХ рд╕рддреНрдпрд╛рдкрди рдкрд░ рд▓рд╛рдЧреВ рдХрд░рдирд╛ (рдЬреИрд╕реЗ C рд╕реЗ Rust рдЕрдиреБрд╡рд╛рдж)
- рдЕрдиреБрдмрдВрдз рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХреА рджрдХреНрд╖рддрд╛ рдФрд░ рд╕рдЯреАрдХрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдирд╛
- рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдЕрд╕реНрдерд╛рдпреА рддрд░реНрдХ рдЧреБрдгреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛
- рд╕рдорд╕реНрдпрд╛ рдорд╣рддреНрд╡: рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓реА рд╕рддреНрдпрд╛рдкрди рдПрдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдФрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдорд╕реНрдпрд╛ рд╣реИ
- рд╡рд┐рдзрд┐ рдирд╡рд╛рдЪрд╛рд░: рд╕рдВрдпреЛрдЬрди рд╕рддреНрдпрд╛рдкрди + рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрдиреБрдмрдВрдз рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХрд╛ рд╕рдВрдпреЛрдЬрди рдирдпрд╛ рд╣реИ
- рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЖрдзрд╛рд░: рдФрдкрдЪрд╛рд░рд┐рдХ рдкрд░рд┐рднрд╛рд╖рд╛ рд╕реНрдкрд╖реНрдЯ рд╣реИ, рд╕рд╣реА рд╣реЛрдиреЗ рдХреА рдЧрд╛рд░рдВрдЯреА рд╕реНрдкрд╖реНрдЯ рд╣реИ
- рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдореВрд▓реНрдп: рдЦрд┐рд▓реМрдирд╛ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рдмрдЬрд╛рдп рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓ рд╕рдХрддрд╛ рд╣реИ
- рдЙрдкрдХрд░рдг рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди: рдЙрдкрдпреЛрдЧреА рдЙрдкрдХрд░рдг рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ
- рдкреНрд░рджрд░реНрд╢рди рдУрд╡рд░рд╣реЗрдб: рдЕрдиреБрдмрдВрдз рд╕рдВрд╢реНрд▓реЗрд╖рдг рд╕рдордп рд▓рдВрдмрд╛ рд╣реИ, рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЛ рд╕реАрдорд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ
- рднрд╛рд╖рд╛ рдХрд╡рд░реЗрдЬ: рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЗрд╡рд▓ C рдФрд░ Rust рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рд╡рд┐рд╕реНрддрд╛рд░ рдпреЛрдЧреНрдпрддрд╛ рд╕рддреНрдпрд╛рдкрд┐рдд рд╣реЛрдиреА рдмрд╛рдХреА рд╣реИ
- рдмреЗрдВрдЪрдорд╛рд░реНрдХ рд╕реАрдорд┐рдд: рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрджрд╛рд╣рд░рдг рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдХрд╛рд░ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЫреЛрдЯрд╛ рд╣реИ
- LLM рдирд┐рд░реНрднрд░рддрд╛: рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ LLM рд╕реЗрд╡рд╛ рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИ, рдкреБрдирд░реБрддреНрдкрд╛рджрдирд╢реАрд▓рддрд╛ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ
- рд╢реИрдХреНрд╖рдгрд┐рдХ рдпреЛрдЧрджрд╛рди: рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓реА рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рдирдИ рдЕрдиреБрд╕рдВрдзрд╛рди рджрд┐рд╢рд╛ рдЦреЛрд▓рддрд╛ рд╣реИ
- рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдореВрд▓реНрдп: рд╕реБрд░рдХреНрд╖рд╛-рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рддреНрдпрд╛рдкрди рдЙрдкрдХрд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ
- рддрдХрдиреАрдХреА рдкреНрд░реЗрд░рдгрд╛: рднрд╛рд╖рд╛-рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдиреБрдмрдВрдз рдХрд╛ рд╡рд┐рдЪрд╛рд░ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдореВрд▓реНрдп рд░рдЦрддрд╛ рд╣реИ
- рдПрдореНрдмреЗрдбреЗрдб рдкреНрд░рдгрд╛рд▓рд┐рдпрд╛рдВ: C/Rust рдорд┐рд╢реНрд░рд┐рдд рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдкреНрд░рдгрд╛рд▓рд┐рдпрд╛рдВ
- рд╡рд┐рддрд░рд┐рдд рдкреНрд░рдгрд╛рд▓рд┐рдпрд╛рдВ: ROS2, gRPC рдЖрджрд┐ рдмрд╣реБрднрд╛рд╖реА рдврд╛рдВрдЪреЗ
- рд╕реБрд░рдХреНрд╖рд╛-рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЕрдиреБрдкреНрд░рдпреЛрдЧ: рдФрдкрдЪрд╛рд░рд┐рдХ рд╕рддреНрдпрд╛рдкрди рдЧрд╛рд░рдВрдЯреА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╡рд╛рд▓реА рдкреНрд░рдгрд╛рд▓рд┐рдпрд╛рдВ
- рд╡рд┐рд░рд╛рд╕рдд рдкреНрд░рдгрд╛рд▓реА рдПрдХреАрдХрд░рдг: рдирдП рдФрд░ рдкреБрд░рд╛рдиреЗ рдХреЛрдб рдорд┐рд╢реНрд░рд┐рдд рдкреНрд░рдгрд╛рд▓рд┐рдпрд╛рдВ
рдкреЗрдкрд░ 50 рд╕рдВрдмрдВрдзрд┐рдд рд╕рдВрджрд░реНрднреЛрдВ рдХрд╛ рд╣рд╡рд╛рд▓рд╛ рджреЗрддрд╛ рд╣реИ, рдЬреЛ рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ, рдФрдкрдЪрд╛рд░рд┐рдХ рд╕рддреНрдпрд╛рдкрди, рдЕрдиреБрдмрдВрдз рдЕрдиреБрдорд╛рди, рд╡рд╛рдХреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕-рдирд┐рд░реНрджреЗрд╢рд┐рдд рд╕рдВрд╢реНрд▓реЗрд╖рдг рдЖрджрд┐ рдХрдИ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдХрд╡рд░ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдЕрдиреБрд╕рдВрдзрд╛рди рдХреЗ рд▓рд┐рдП рдПрдХ рдордЬрдмреВрдд рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЖрдзрд╛рд░ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред
рд╕рдордЧреНрд░ рдореВрд▓реНрдпрд╛рдВрдХрди: рдпрд╣ рдПрдХ рдЙрдЪреНрдЪ рдЧреБрдгрд╡рддреНрддрд╛ рд╡рд╛рд▓рд╛ рдкреНрд░рдгрд╛рд▓реА рдЕрдиреБрд╕рдВрдзрд╛рди рдкреЗрдкрд░ рд╣реИ рдЬреЛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдФрд░ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред рд╡рд┐рдзрд┐ рдирд╡реАрди рд╣реИ, рдкреНрд░рдпреЛрдЧ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИрдВ, рдЙрдкрдХрд░рдг рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкреВрд░реНрдг рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдкреНрд░рджрд░реНрд╢рди рдФрд░ рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА рдХреЗ рдкрд╣рд▓реБрдУрдВ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреА рдЧреБрдВрдЬрд╛рдЗрд╢ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдмрд╣реБрднрд╛рд╖реА рдкреНрд░рдгрд╛рд▓реА рд╕рддреНрдпрд╛рдкрди рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдпреЛрдЧрджрд╛рди рджреЗрддрд╛ рд╣реИред