Çalışma zamanı boyutu sözleşme boyutu sınırının altında tutulur.
Web3 Laboratuvarı / Trigonometry Master
Gerçek EVM sınırlarına göre ölçülmüş Solidity trigonometri.
Ethereum tarzı yürütme ortamları için gas, hassasiyet, bytecode ve Diamond dağıtım yolları üzerinden değerlendirilen deneysel bir trigonometri kütüphanesi ve benchmark çerçevesi.
sin(π/4)
Diamond yolu
Çerçeve
Trigonometry Master nedir?
Trigonometry Master; deneysel bir Solidity trigonometri kütüphanesi, uygulanabilirlik çerçevesi ve Diamond uyumlu bir production-path demonstratörüdür. Binary128 tarzı aritmetik, özel değer politikaları, dağıtım yapısı ve gas davranışının EVM üzerindeki etkileşimini production hazırlığı iddiasını abartmadan inceler.
Kapsam
Neleri destekler?
Proje, trigonometri işlemlerini bilinçli şekilde açık yürütme ve karakterizasyon yollarıyla bir araya getirir.
sin, cos, tan, cot
asin, acos, atan
ABDK binary128 destekli TrigMath facade
Diamond uyumlu dağıtım yolu
Direct harness, facet ve production-path benchmark’ları
Raw binary128 edge-case karakterizasyonu
ULP raporlama ve bytecode boyutu korumaları
Ölçülen sonuçlar
Benchmark öne çıkanları
Kayda geçirilmiş yerel Hardhat receipt ölçümleri ve boyut değerleri. Bu sonuçlar proje yapılandırmasını açıklar; evrensel ana ağ garantisi değildir.
| Benchmark | Sonuç | Yapılandırma |
|---|---|---|
| π/4 için sin | 43.473 gas | Diamond-routed yerel Hardhat receipt |
| π/4 için cos | 42.504 gas | Diamond-routed yerel Hardhat receipt |
| π/4 için tan | 54.827 gas | Diamond-routed yerel Hardhat receipt |
| π/4 için cot | 54.831 gas | Diamond-routed yerel Hardhat receipt |
| TrigonometryFacet çalışma zamanı boyutu | 18.333 byte | 6.243 byte EIP-170 payı |
| TrigonometryFacet dağıtımı | 4.013.373 gas | Yerel dağıtım receipt’i |
| Varsayılan test paketi | 40 test geçiyor | Mevcut proje paketi |
Bytecode bütçesi korumaları test paketinin parçasıdır.
Kayda geçirilmiş yerel kurulum receipt’i.
Kanıtlar
Mühendislik kalitesi ve tekrarlanabilirlik
- NaN, infinity, domain sınırları ve poles için açık politika
- Signed-zero, subnormal, büyük sonlu değer ve raw binary128 edge-case kapsamı
- Diamond selector, loupe, access-control ve entegrasyon testleri
- ULP raporlamalı yüksek çözünürlüklü sin/cos karakterizasyonu
- Bytecode bütçe testleri ve production Diamond gas benchmark’ları
- Dağıtım script’i ve direct-vs-Diamond ödünleşim dokümantasyonu
Nedir / ne değildir?
Bu nedir
- Solidity trigonometri ve benchmarking çerçevesi
- Web3 sayısal mühendislik vaka çalışması
- EVM gas ve bytecode uygulanabilirlik incelemesi
- Diamond dağıtım yolu demonstratörü
Bu ne değildir
- Denetlenmiş production finansal matematik kütüphanesi
- Tüm trigonometri iş yüklerinin ana ağda ekonomik olduğunun kanıtı
- Tam binary128 correctly-rounded trigonometri uygulaması
- Keyfi büyüklükte açı için Payne–Hanek reducer
Uygulamalar
Nerede yararlıdır?
Uygulanabilirlik kararları
Matematik yoğun akıllı sözleşme işlerinin sınırlı yürütme yollarında pratik olup olmadığını değerlendiren Web3 ekipleri için.
Dağıtım ödünleşimleri
Direct yürütme ile Diamond routing ve dağıtım ek yükünü karşılaştıran Solidity ekipleri için.
Sayısal araştırma
EVM sayısal hesaplama araştırma prototipleri ve sınırlı zincir üstü trigonometri deneyleri için.
Optimizasyon çalışmaları
Özelleşmiş matematiksel davranışa sahip sözleşmeler için gas ve bytecode incelemeleri.
Sınırlar
Uygulanabilirlik ve sınırlar
- Sonlu doğrudan açı girdileri |x| ≤ 2^32 için desteklenir.
- sin ve cos sonlu Taylor polinomları kullanır; tam binary128 alanında binary128-doğruluğunda değildir.
- Mevcut yüksek çözünürlüklü karakterizasyon, sine için yaklaşık 2.0364e-14 ve cosine için yaklaşık 3.8881e-13 maksimum mutlak hata kaydeder.
- Yayınlanan gas değerleri yerel Hardhat sonuçlarıdır; evrensel ana ağ garantisi değildir.
- Keyfi binary128 açı indirgeme bilinçli olarak kapsam dışıdır; multiprecision Payne–Hanek tarzı indirgeme gerektirir.
- Diamond routing selector, delegatecall, dağıtım ve operasyonel karmaşıklık ekler.
Trigonometry Master
Uygulamayı, benchmark metodolojisini, dağıtım yolunu ve belgelenmiş sınırları herkese açık depoda inceleyin.
GitHub’da İncele
Armoni Flowİletişim