Actual Causation Paper and Software

On this web page you will find links to the paper Actual Causes and Thought Experiments as well as a link which will permit you to download Java software that implements a Lewis network editor and analyzer. The program allows you to enter an Lewis-style actual causal network and to compute candidate actual causes of the variables (using the definition D1 which appears in the paper).

To run the software you should click on this link and select "open" if a dialog box appears. If that doesn't work (which depends on how your browser is configured), you can save the jar file in some folder on your computer (by selecting “save” in the dialog box) and then open a command window (MS-Dos Prompt) in which you should type "java -jar LewisNetworkEditor.jar" after using "cd" to change to that folder (directory).

After the program starts you will see a window with several buttons at the top. You should carry out the following steps in the order specified:

  1. Click on the button labeled “Add/Move Variables”. Then every time you click on a point within the window a rectangle will appear which represents a node or variable in the network. The variables will be labeled “A”, “B”, “C” and so on. These labels can be changed later. Note that you can move a variable after creating it by clicking on it, holding the mouse button down and sliding the rectangle to a new position.
  2. After adding all the variables and placing them where you want them, you should click the “Add/Delete Edges” button. You can then specify an edge from one variable to another by holding the mouse button down while sliding the mouse from the “cause” variable to the “effect” variable. When you release the button a dialog box will appear which allows you to specify whether the edge is a positive or negative input to the “effect”. After you have selected the appropriate sense click on the OK button and the edge will appear.
  3. Click on the “Edit Vertex” button to be able to define values for the zero-indegree variables or to change the labels of any variables. When you click on a node a dialog box will appear which permits you to select a value of either 0 or 1 for the variable and to edit its name, if you want to change it. Variables which have been set to 1 will appear gray while those whose value is 0 will remain white.
  4. After you have set the value for the zero-indegree variables you can click on the “Propagate” button and the value of all the variables will be computed as determined by the values of their inputs.
  5. After you click on the “Compute CAC” button you can click on any variable to compute its Candidate Actual Causes according to D1. The results will appear in the lower left area of the window.
  6. The “Clear” button removes all variable and edges and you can begin again. The “Done” button halts the program.

Please contact Frank Wimberly (wimberly3@earthlink.net) with comments, questions or suggestions.