vanishing edge rates

Edge rate scaling factors that are zero should not cause problems in general, even when derivatives are computed. In this example one of the edge rates is zero at an internal branch, and two of the calculated derivatives are zero.

input

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
{
	"scene" : {
		"node_count" : 6,
		"process_count" : 1,
		"state_space_shape" : [2],
		"tree" : {
			"row_nodes" : [0, 1, 1, 3, 3],
			"column_nodes" : [1, 2, 3, 4, 5],
			"edge_rate_scaling_factors" : [1, 1, 0, 1, 1],
			"edge_processes" : [0, 0, 0, 0, 0]
		},
		"root_prior" : {
			"states" : [[0], [1]],
			"probabilities" : [0.5, 0.5]
		},
		"process_definitions" : [{
			"row_states" : [[0], [1]],
			"column_states" : [[1], [0]],
			"transition_rates" : [0.1, 0.1]
		}],
		"observed_data" : {
			"nodes" : [2, 4, 5],
			"variables" : [0, 0, 0],
			"iid_observations" : [
				[0, 0, 0],
				[1, 1, 1],
				[1, 0, 0],
				[0, 1, 0],
				[0, 0, 1]
			]
		}
	},
	"requests" : [
		{"property" : "SNNLOGL"},
		{"property" : "SDNDERI"}
	]
}

output

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
{
	"status": "feasible",
	"responses": [
		-10.345683149464973,
		[
			0.0,
			-0.06426390833819552,
			0.0,
			-0.06426390833819554,
			-0.06426390833819554
		]
	]
}