Potrzebuję użyć części standardowej biblioteki o nazwie Coq.Arith.PeanoNat (https://coq.inria.fr/library/Coq.Arith.PeanoNat.html).Jak zaimportować bibliotekę: Coq.Arith.PeanoNat in Coq?
Próbowałem importować całą bibliotekę Arith lub tylko ten moduł, ale nie mogę jej użyć w żaden sposób.
Każda inna biblioteka, którą wypróbowałem, działa dobrze. Kiedy robię Require Import Bool.
, kompiluję i mogę go używać poprawnie. Po Print Bool.
mogę przyjrzeć się wszystkimi funkcjami wewnątrz w następnym formacie:
Module
Bool
:= Struct
Definition...
.
.
.
End
Kiedy wykonać jedną Require Import Arith.PeanoNat.
lub Require Import Arith.
otrzymuję ten jako natychmiastowe wyjście:
[Loading ML file z_syntax_plugin.cmxs ... done]
[Loading ML file quote_plugin.cmxs ... done]
[Loading ML file newring_plugin.cmxs ... done]
<W> Grammar extension: in [tactic:simple_tactic], some rule has been masked
<W> Grammar extension: in [tactic:simple_tactic], some rule has been masked
<W> Grammar extension: in [tactic:simple_tactic], some rule has been masked
<W> Grammar extension: in [tactic:simple_tactic], some rule has been masked
<W> Grammar extension: in [tactic:simple_tactic], some rule has been masked
Kiedy pytam Coq Print Arith.PeanoNat
wyprowadza: Module Arith := Struct End
, wydaje się pusty. Kiedy próbuję użyć czegokolwiek z biblioteki, na przykład le_le
pod porównaniami boolowskimi, otrzymuję standard Error: leb_le not a defined object.
Mam zaktualizowany Coq i biblioteki i nie mam pojęcia, co może się tu dziać. Doceniam twój wkład w naprawianie tego problemu z biblioteką.
Czy importujesz inne moduły w tym samym czasie, które mogą powodować konflikty? – ichistmeinname
@ichistmeinname, importuję tylko Bool i Arith. Do celów testowych zaimportowałem inne i usunąłem je z mojego pliku, gdy zobaczyłem, że działają dobrze. – Sara