summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2017-07-31 17:04:51 +0200
committerNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2017-07-31 17:04:51 +0200
commitbc8e275546e2e6fe6bcf19ce42c0fab07eecdf4c (patch)
treec0fc19f8cb2a3b296f6fef3394ebee122fe5343c /data/property/cnes
parent27fd5d8afef49ffeca83dd5714738bfaffe04505 (diff)
Fixes typo with functions, errors in grammar.
Looking for the groups matching CNE_01700 appears to take a really long time. The formula is quite complex, yet unlikely to be one of the most complex ones, so we'll have to see what can be done.
Diffstat (limited to 'data/property/cnes')
-rw-r--r--data/property/cnes/CNE_00100.pro52
-rw-r--r--data/property/cnes/CNE_01700.pro137
-rw-r--r--data/property/cnes/CNE_05100.pro64
-rw-r--r--data/property/cnes/STD_04800.pro29
4 files changed, 282 insertions, 0 deletions
diff --git a/data/property/cnes/CNE_00100.pro b/data/property/cnes/CNE_00100.pro
new file mode 100644
index 0000000..c5d0319
--- /dev/null
+++ b/data/property/cnes/CNE_00100.pro
@@ -0,0 +1,52 @@
+(tag_existing
+ (
+ (wfm waveform CNE_00100_HAS_BAD_NAME)
+ )
+ (and
+ (not (string_matches [identifier wfm] ".*_n"))
+ (exists p1 process
+ (CTL_verifies p1
+ (EF
+ (and
+ (kind "if")
+ (is_read_structure "(???)")
+ (is_read_element "0" "=")
+ (or
+ (and
+ (is_read_element "1" "'0'")
+ (is_read_element "2" wfm)
+ )
+ (and
+ (is_read_element "1" wfm)
+ (is_read_element "2" "'0'")
+ )
+ )
+ )
+ )
+ )
+ )
+ (not
+ (exists p2 process
+ (CTL_verifies p2
+ (EF
+ (and
+ (kind "if")
+ (is_read_structure "(???)")
+ (is_read_element "0" "=")
+ (or
+ (and
+ (is_read_element "1" "'0'")
+ (is_read_element "2" wfm)
+ )
+ (and
+ (is_read_element "1" wfm)
+ (is_read_element "2" "'0'")
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+)
diff --git a/data/property/cnes/CNE_01700.pro b/data/property/cnes/CNE_01700.pro
new file mode 100644
index 0000000..6b77fa1
--- /dev/null
+++ b/data/property/cnes/CNE_01700.pro
@@ -0,0 +1,137 @@
+(tag_existing
+ (
+ (x_re waveform CNE_01700_HAS_BAD_NAME)
+ )
+ (and
+ (not (string_matches [identifier x_re] ".*_re"))
+ (exists x waveform
+ (exists x_r1 waveform
+ (and
+ (exists clk1 waveform
+ (exists ps1 process
+ (and
+ (is_explicit_process ps1)
+ (is_in_sensitivity_list clk1 ps1)
+ (or
+ (CTL_verifies ps1
+ (AF
+ (and
+ (kind "if")
+ (is_read_structure "(??)")
+ (or
+ (is_read_element "0" "falling_edge")
+ (is_read_element "0" "rising_edge")
+ )
+ (is_read_element "1" clk1)
+ (EX
+ (and
+ (has_option "COND_WAS_TRUE")
+ (does_not_reach_parent_before
+ (and
+ (expr_writes x_r1)
+ (is_read_structure "?")
+ (is_read_element "0" x)
+ (AX
+ (not
+ (EF
+ (expr_writes x_r1)
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ (exists rst1 waveform
+ (and
+ (is_in_sensitivity_list rst1 ps1)
+ (CTL_verifies ps1
+ (AF
+ (and
+ (kind "if")
+ (is_read_structure "(???)")
+ (is_read_element "0" "=")
+ (is_read_element _ rst1)
+ (EX
+ (and
+ (not (has_option "COND_WAS_TRUE"))
+ (kind "if")
+ (is_read_structure "(??)")
+ (or
+ (is_read_element "0" "falling_edge")
+ (is_read_element "0" "rising_edge")
+ )
+ (is_read_element "1" clk1)
+ (EX
+ (and
+ (has_option "COND_WAS_TRUE")
+ (does_not_reach_parent_before
+ (and
+ (expr_writes x_r1)
+ (is_read_structure "?")
+ (is_read_element "0" x)
+ (AX
+ (not
+ (EF
+ (expr_writes x_r1)
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ (exists ps2 process
+ (and
+ (is_in_sensitivity_list x_r1 ps2)
+ (is_in_sensitivity_list x ps2)
+ (CTL_verifies ps2
+ (AF
+ (and
+ (expr_writes x_re)
+ (is_read_element "0" "and")
+ (or
+ (and
+ (is_read_structure "(?(??)?)")
+ (is_read_element "1" "not")
+ (is_read_element "2" x_r1)
+ (is_read_element "3" x)
+ )
+ (and
+ (is_read_structure "(??(??))")
+ (is_read_element "1" x)
+ (is_read_element "2" "not")
+ (is_read_element "3" x_r1)
+ )
+ )
+ (AX
+ (not
+ (EF
+ (expr_writes x_r1)
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+)
diff --git a/data/property/cnes/CNE_05100.pro b/data/property/cnes/CNE_05100.pro
new file mode 100644
index 0000000..dd8b2c1
--- /dev/null
+++ b/data/property/cnes/CNE_05100.pro
@@ -0,0 +1,64 @@
+(tag_existing
+ (
+ (wfm waveform STRUCT_SINGLE_PROCESS_MULTIPLEXOR)
+ )
+ (exists ps process
+ (and
+ (is_explicit_process ps)
+ (forall sl1 waveform
+ (and
+ (CTL_verifies ps
+ (implies
+ (EF (expr_writes sl1))
+ (AF (expr_writes sl1))
+ )
+ )
+ (implies
+ (exists target waveform
+ (CTL_verifies ps
+ (EF
+ (and
+ (is_read_element _ sl1)
+ (not
+ (and
+ (expr_writes target)
+ (AX
+ (AF
+ (expr_writes target)
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ (is_in_sensitivity_list sl1 ps)
+ )
+ )
+ )
+ (CTL_verifies ps
+ (AF
+ (and
+ (or
+ (kind "case")
+ (kind "if")
+ )
+ (does_not_reach_parent_before
+ (and
+ (expr_writes wfm)
+ (AX
+ (not
+ (EF
+ (expr_writes wfm)
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+ )
+)
diff --git a/data/property/cnes/STD_04800.pro b/data/property/cnes/STD_04800.pro
new file mode 100644
index 0000000..8f998e4
--- /dev/null
+++ b/data/property/cnes/STD_04800.pro
@@ -0,0 +1,29 @@
+(tag_existing
+ (
+ (wfm waveform STD_04800_DOUBLE_SENSITIVITY_EDGE_CLOCK)
+ )
+ (and
+ (exists ps_re process
+ (CTL_verifies ps_re
+ (EF
+ (and
+ (is_read_structure "(??)")
+ (is_read_element "0" "rising_edge")
+ (is_read_element "1" wfm)
+ )
+ )
+ )
+ (exists ps_fe process
+ (CTL_verifies ps_fe
+ (EF
+ (and
+ (is_read_structure "(??)")
+ (is_read_element "0" "falling_edge")
+ (is_read_element "1" wfm)
+ )
+ )
+ )
+ )
+ )
+ )
+)