Add the ConflictTracker to the main branch
[jpf-core.git] / main.jpf
index d394ec3350e8e0f4a1a0988e62874e1d5f752c1b..89d4f48473ce962affae7a169ecfaf8c71a4167e 100644 (file)
--- a/main.jpf
+++ b/main.jpf
@@ -1,7 +1,11 @@
 target = main
+#target = Rand
 
 # This is the listener that can detect variable write-after-write conflicts
 listener=gov.nasa.jpf.listener.VariableConflictTracker
+#listener=gov.nasa.jpf.listener.StateReducer
+#listener=gov.nasa.jpf.listener.StateReducerOld
+#listener=gov.nasa.jpf.listener.VariableConflictTracker,gov.nasa.jpf.listener.StateReducer
 
 # Potentially conflicting variables
 # Alarms
@@ -13,7 +17,17 @@ variables=currentLock
 # Switches
 #variables=currentSwitch
 # Lights
-#variables=color,hue,saturation
+#variables=colorChanged,currentHue,currentSaturation,currentLevel,currentSwitch,colorTemperature
+# Speeches
+#variables=level,oneUser
+# Music players
+#variables=status,duration,level,trackDescription,trackData,mute
+# Relay switch
+#variables=currentSwitch
+# Valves
+#variables=valve,valveLatestValue
+# Cameras
+#variables=image,alarmState
                        
 # Potentially conflicting apps (we default to App1 and App2 for now)
 apps=App1,App2
@@ -21,4 +35,15 @@ apps=App1,App2
 # Tracking the location.mode variable conflict
 #track_location_var_conflict=true
 
+# Debug mode for StateReducer
+debug_state_transition=true
+activate_state_reduction=true
+
+# Timeout in minutes (default is 0 which means no timeout)
+timeout=30
+
+#search.class = gov.nasa.jpf.search.heuristic.RandomHeuristic
+#search.heuristic.beam_search=true
 #search.class = gov.nasa.jpf.search.heuristic.UserHeuristic
+#search.class = gov.nasa.jpf.search.heuristic.BFSHeuristic
+#search.class = gov.nasa.jpf.search.heuristic.DFSHeuristic