“Where is work coupled?”
Use a process DSM and inspect its SCCs. A cycle flags mutual information needs. It can call for iterative coordination, preliminary assumptions, simultaneous solution or a redesign of the process.
DSM partitioning rearranges the same named activities. Rational canonical form changes the coordinates. The name “Frobenius form” is used for both kinds of structure — which is why this comparison needs care.
In a process DSM, a mark means that one activity needs information from another. Group activities connected by paths in both directions, then order those groups.
Reading convention: row receives from column. A mark at row B, column A means A → B: B needs information from A. Marks are binary information dependencies, not durations or resource quantities.
Click a cell to add or remove a dependency. Rows and columns use the same deliberately mixed order. Diagonal cells are excluded in this six-activity example.
Each outlined block is a strongly connected component (SCC): its activities reach one another by directed paths. Single activities can also be components.
Arrows are the actual dependencies between components. A left-to-right arrangement exists because this condensed graph has no directed cycles. Nodes at the same level are not guaranteed to be resource-feasible in parallel.
In graph and nonnegative-matrix contexts, a Frobenius normal form groups strongly connected components using a simultaneous row/column permutation. Dependencies between components stay in the matrix. It is generally block triangular, not block diagonal.
We put information suppliers first and use “row receives from column”, so marks between blocks fall below the diagonal. Transpose the reading convention or reverse the order and the picture becomes upper triangular. The underlying relationships are the same.
The component membership is fixed by the graph. The order among unrelated components, and the displayed order within a coupled group, need not be unique. This app uses a stable alphabetical tie-break; it does not optimise the order inside feedback groups.
Edits stay in this open page until you save. A saved draft lives only in this browser on this device. Restore it explicitly after returning.
No draft has been loaded into this page.
Show the current draft, then copy the text somewhere you control. To reopen it, paste it here and choose Load JSON. Invalid input leaves your current matrix intact.
Rational canonical form represents the same linear map in a new basis. Those new coordinates can be mixtures of the originals — so they generally stop being named project activities.
Three exact worked examples over the rational numbers. These are computed change-of-basis checks, not a general-purpose canonical-form solver.
A monic polynomial has leading coefficient 1. For p(t) = t² + a₁t + a₀, we use the companion matrix [[0, −a₀], [1, −a₁]]. Its columns describe advancing along a cyclic basis and closing that sequence using p.
Rational canonical form places companion matrices of the nonconstant invariant factors on a block diagonal, with f₁ dividing f₂, and so on. Their product is the characteristic polynomial; the last is the minimal polynomial. With the field and companion/block convention fixed, the result is canonical. No factorisation into eigenvalues is required.
Compare the two repeated-eigenvalue examples: the coupled map has one size-two companion block, while the identity has two size-one blocks. Matching eigenvalues or characteristic polynomials alone does not establish similarity.
Start with the question you want the matrix to answer. The shared name does not make the transformations interchangeable.
| Question | DSM partitioning / graph Frobenius form | Rational canonical / Frobenius form |
|---|---|---|
| What changes? | The order of the same rows and columns. | The coordinate basis, usually mixing original coordinates. |
| What defines a block? | Mutual reachability in the dependency graph. | An invariant polynomial factor of the linear map. |
| What does the result look like? | Block triangular. Connections between blocks remain. | Block diagonal companion matrices. |
| What survives? | Every named dependency and its value, up to relabelling positions. Eigenvalues also survive. | Similarity invariants, including characteristic and minimal polynomials. The graph's nonzero pattern need not survive. |
| Is it unique? | Component membership is unique; permitted ordering often is not. | Yes, after fixing the field and canonical block convention. |
| What can I use it for? | Expose coupled work and inter-group information flow before making process decisions. | Understand and classify a linear operator; compare matrices up to similarity. |
Use a process DSM and inspect its SCCs. A cycle flags mutual information needs. It can call for iterative coordination, preliminary assumptions, simultaneous solution or a redesign of the process.
Use similarity and rational canonical form. A new nonzero entry can come from changing the basis; it is not automatically a new real-world dependency.
Add durations, resource capacities, release rules and a treatment of feedback. Neither matrix form alone supplies a feasible schedule or the number of rework cycles.
DSM partitioning helps locate coupled groups and their external dependencies. It is a useful structural starting point when projects reuse smaller work blocks. To compose those blocks into justified plans, their interfaces may need much more: resource consumption and release, intermediate outputs, alternative ways forward and conditions for completion.
A Petri-net or boundary-contract model can make some of those rules explicit. An SCC is not itself such a contract, and rearranging a DSM does not automatically generate one. This app explains the distinction; it does not claim that the extra method has already been derived.
Revision · 20 September 2026. Rebuilt from the supplied June 2025 comparison. Removed the unsupported DSM expansion and decomposition; distinguished the two Frobenius meanings; replaced static placeholder results with computed SCC partitions and exact similarity examples. The scenarios and teaching interface are our construction. This is a binary, six-activity teaching model; it does not model self-dependencies, numeric coupling strength, resource use, iteration counts or optimal sequencing.