Telegram Group & Telegram Channel
🎯 Coq-of-Rust β€” это инструмСнт для Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π° Π½Π° Rust. Он ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ подмноТСство Rust Π² спСцификации Π½Π° языкС Coq, позволяя Π΄ΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ матСматичСскими ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ надСТности критичСских систСм (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΎΠ², embedded-Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ), Π³Π΄Π΅ ошибки нСдопустимы.

πŸ”₯ ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
Врансляция Rust β†’ Coq:
ΠšΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ структуры, пСрСчислСния (enum), Ρ‚Ρ€Π΅ΠΉΡ‚Ρ‹ (trait), ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ выраТСния Π² эквивалСнтный ΠΊΠΎΠ΄ Π½Π° Coq.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° систСмы владСния:
Π£Ρ‡ΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»Π° заимствования ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΆΠΈΠ·Π½ΠΈ (lifetimes), сохраняя сСмантику Rust Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ спСцификаций.

ГСнСрация Ρ‚Π΅ΠΎΡ€Π΅ΠΌ:
АвтоматичСски создаСт условия для Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° свойств (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, отсутствиС ΠΏΠ°Π½ΠΈΠΊ, ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²).

Coq-of-Rust β€” это шаг ΠΊ матСматичСски Π²Π΅Ρ€ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌΡƒ Rust. Если Π²Ρ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ систСмы, Π³Π΄Π΅ Ρ†Π΅Π½Π° ошибки высока, этот инструмСнт ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π² Π½Π°Π±ΠΎΡ€ Ρ‚Π΅ΠΎΡ€Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ строго Π΄ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ.

Π‘ΠΎΠ²Π΅Ρ‚: НачнитС с ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈΠ· рСпозитория, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ Rust-конструкции.

https://github.com/formal-land/coq-of-rust

@rust_code



tg-me.com/rust_code/904
Create:
Last Update:

🎯 Coq-of-Rust β€” это инструмСнт для Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π° Π½Π° Rust. Он ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ подмноТСство Rust Π² спСцификации Π½Π° языкС Coq, позволяя Π΄ΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ матСматичСскими ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ надСТности критичСских систСм (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΎΠ², embedded-Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ), Π³Π΄Π΅ ошибки нСдопустимы.

πŸ”₯ ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
Врансляция Rust β†’ Coq:
ΠšΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ структуры, пСрСчислСния (enum), Ρ‚Ρ€Π΅ΠΉΡ‚Ρ‹ (trait), ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ выраТСния Π² эквивалСнтный ΠΊΠΎΠ΄ Π½Π° Coq.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° систСмы владСния:
Π£Ρ‡ΠΈΡ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»Π° заимствования ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΆΠΈΠ·Π½ΠΈ (lifetimes), сохраняя сСмантику Rust Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ спСцификаций.

ГСнСрация Ρ‚Π΅ΠΎΡ€Π΅ΠΌ:
АвтоматичСски создаСт условия для Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° свойств (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, отсутствиС ΠΏΠ°Π½ΠΈΠΊ, ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²).

Coq-of-Rust β€” это шаг ΠΊ матСматичСски Π²Π΅Ρ€ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌΡƒ Rust. Если Π²Ρ‹ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ систСмы, Π³Π΄Π΅ Ρ†Π΅Π½Π° ошибки высока, этот инструмСнт ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π² Π½Π°Π±ΠΎΡ€ Ρ‚Π΅ΠΎΡ€Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ строго Π΄ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ.

Π‘ΠΎΠ²Π΅Ρ‚: НачнитС с ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈΠ· рСпозитория, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ Rust-конструкции.

https://github.com/formal-land/coq-of-rust

@rust_code

BY Rust




Share with your friend now:
tg-me.com/rust_code/904

View MORE
Open in Telegram


Rust Telegram | DID YOU KNOW?

Date: |

The messaging service and social-media platform owes creditors roughly $700 million by the end of April, according to people briefed on the company’s plans and loan documents viewed by The Wall Street Journal. At the same time, Telegram Group Inc. must cover rising equipment and bandwidth expenses because of its rapid growth, despite going years without attempting to generate revenue.

Rust from us


Telegram Rust
FROM USA