Adding more state reduction analysis.
[jpf-core.git] / main.jpf
index 85af65a5ccedf82e64dccbc07d1cdb7fb441caf1..9ef7754c722ff9ce072b220b95113ca3bf105c30 100644 (file)
--- a/main.jpf
+++ b/main.jpf
@@ -1,14 +1,31 @@
 target = main
 
 # This is the listener that can detect variable write-after-write conflicts
-listener=gov.nasa.jpf.listener.VariableConflictTracker
+#listener=gov.nasa.jpf.listener.VariableConflictTracker
+listener=gov.nasa.jpf.listener.StateReducer
+#listener=gov.nasa.jpf.listener.VariableConflictTracker,gov.nasa.jpf.listener.StateReducer
 
 # Potentially conflicting variables
-variables=currentAlarm,currentContact,doorState,currentLock,currentMotion,status,currentPresence,\
-                       currentSmokeValue,currentHeatingSetpoint,thermostatSetpoint,currentCoolingSetpoint,\
-                       thermostatOperatingState,thermostatFanMode,currentThermostatMode,currentSwitch,\
-                       currentAcceleration, currentBattery, currentPresence, currentCarbonMonoxideValue,\
-                       color, hue, saturation
+# Alarms
+#variables=currentAlarm
+# Locks
+variables=currentLock
+# Thermostats
+#variables=currentHeatingSetpoint,thermostatSetpoint,currentCoolingSetpoint,thermostatOperatingState,thermostatFanMode,currentThermostatMode
+# Switches
+#variables=currentSwitch
+# Lights
+#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
@@ -16,4 +33,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