Ini ialah arahan alt-ergo yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.
JADUAL:
NAMA
Alt-Ergo - Pembukti teorem automatik khusus untuk pengesahan program
SINOPSIS
alt-ergo [ pilihan ] fail
DESCRIPTION
Alt-Ergo ialah peribahasa teorem automatik. Ia mengambil sebagai input polimorfik dan
formula tertib pertama berbilang isih yang ditulis ialah sintaks seperti mengapa.
PILIHAN
-h Tolong. Akan memberi anda senarai penuh pilihan baris arahan.
CONTOH
Teori tatasusunan berfungsi dengan indeks integer. Teori ini menyediakan jenis terbina dalam
('a,'b) farray dan sintaks terbina dalam untuk memanipulasi tatasusunan.
Sebagai contoh, diberikan jenis data abstrak tau dan tatasusunan fungsi t jenis (int,
tau) farray diisytiharkan seperti berikut:
taip tau
logik t : (int, tau) farray
Ungkapan-ungkapan:
t[i] menandakan nilai yang disimpan dalam t pada indeks i
t[i1<-v1,...,in<-vn] menandakan tatasusunan yang menyimpan nilai yang sama seperti t untuk setiap
indeks kecuali mungkin i1,...,in, di mana ia menyimpan nilai v1,...,vn. Ungkapan ini
adalah bersamaan dengan ((t[i1<-v1])[i2<-v2])...[in<-vn].
Contoh.
t[0<-v][1<-w]
t[0<-v, 1<-w]
t[0<-v, 1<-w][1]
Teori jenis penghitungan.
Sebagai contoh, jenis penghitungan t dengan pembina A, B, C ditakrifkan seperti berikut
:
taip t = A | B | C
Ini bermakna semua nilai jenis t adalah sama dengan A, B atau C. Dan itu sahaja
pembina ini adalah berbeza.
Teori rekod polimorfik.
Contohnya jenis rekod polimorfik 'at dengan dua label a dan b jenis 'a dan
int masing-masing ditakrifkan seperti berikut:
taip 'at = { a : 'a; b: int }
Ungkapan { a = 4; b = 5 } dan { r dengan b = 3} menandakan rekod, manakala titik
tatatanda ra digunakan untuk mengakses label.
Alt-Ergo (v. >= 0.95) membenarkan pengguna memaksa jenis istilah menggunakan sintaks :
. Contoh di bawah menggambarkan penggunaan ciri baharu ini.
taip 'senarai
logik nol : senarai 'b
logik f : senarai 'c -> int
matlamat g1 : f(nil) = f(nil) (* tidak sah kerana dua kejadian nil mungkin mempunyai
pelbagai jenis *)
matlamat g2 : f(nil:'d list) = f(nil:'d list) (* sah *)
PERSEKITARAN PELBAGAI
ERGOLIB
Laluan alternatif untuk perpustakaan Alt-Ergo
PENGARANG
Sylvain Conchon <[e-mel dilindungi]> dan Evelyne Contejean <[e-mel dilindungi]>
Gunakan alt-ergo dalam talian menggunakan perkhidmatan onworks.net