trudag.graphalyzer.analysis
Functions acting on the structure of a DirectedAcyclicGraph.
score
score(
graph: DirectedAcyclicGraph,
correctness_dict: dict[str, float],
completeness_dict: dict[str, float] | None = None,
) -> dict[str, float]
Given a dictionary of correctness scores for leaf (or equivalently Premise) items, compute the Trustable Scores of every node in the graph.
Note
- Non-leaf item scores included in
correctness_dictare disregarded. - Unscored leaves are assumed to have score zero.
- If no completeness scores are provided, the argument is assumed to be complete.
- If partial completeness scores are provided, omitted scores are set to zero.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
graph
|
DirectedAcyclicGraph
|
Graph of the project being scored. |
required |
correctness_dict
|
dict[str, float]
|
Dictionary of (leaf item name, leaf item correctness) pairs. |
required |
completeness_dict
|
dict[str, float] | None
|
Dictionary of (item name, item completeness). Defaults to None. |
None
|
Returns:
| Type | Description |
|---|---|
dict[str, float]
|
Dictionary of (item name, item trustable score) pairs. |
score_edge_sensitivity
score_edge_sensitivity(
graph: DirectedAcyclicGraph,
edge: tuple[str, str],
correctness_dict: dict[str, float],
completeness_dict: dict[str, float] | None = None,
) -> dict[str, float]
Dictionary of node scores differentiated with respect to the chosen edge weight.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
graph
|
DirectedAcyclicGraph
|
Graph of the project being analyzed. |
required |
edge
|
tuple[str, str]
|
|
required |
correctness_dict
|
dict[str, float]
|
Dictionary of (leaf item name, leaf item correctness) pairs. |
required |
completeness_dict
|
dict[str, float] | None
|
Dictionary of (item name, item completeness). Defaults to None. |
None
|
Returns:
| Type | Description |
|---|---|
dict[str, float]
|
(node, node-derivative) key-value pairs for all nodes. |
score_node_sensitivity
score_node_sensitivity(
graph: DirectedAcyclicGraph,
node_label: str,
completeness_dict: dict[str, float] | None = None,
) -> dict[str, float]
The partial derivatives of node_label's score with respect to other node scores.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
graph
|
DirectedAcyclicGraph
|
Graph of project under analysis. |
required |
node_label
|
str
|
Label of the node to return partial derivatives of. |
required |
completeness_dict
|
dict[str, float] | None
|
Dictionary of (item name, item completeness). Defaults to None. |
None
|
Returns:
| Type | Description |
|---|---|
dict[str, float]
|
(node, node-derivative) key-value pairs for all nodes. |