Contents
While developing The Architecture of Nonfiction, we revised a paragraph until the final version barely resembled the first.
Before
An essay contains parts that should become stable and parts that should remain easy to change. Its governing purpose, argumentative sequence, section responsibilities, and handoffs between sections form its spine, the literal backbone of the piece that remains stable. Sources, examples, counterarguments, applications, and publication-specific framing supply or extend the material around that spine. These should be easy to change.
The paragraph had the right general idea, but the metaphor made the explanation harder to follow. A spine is not literally stable, the material “around” it was never identified clearly, and These had an ambiguous referent. We replaced the metaphor with the relationship the paragraph needed to explain:
After
An essay contains parts that should become stable and parts that should remain easy to change. Its governing purpose, argumentative sequence, section responsibilities, and handoffs between sections form its stable structure. Sources, examples, counterarguments, applications, and publication-specific framing extend that structure and should remain easy to add, replace, or remove.
The wording changed. The metaphor changed. The paragraph’s place in the argument did not.
In the parent essay, both versions occupied the same position. They followed an explanation that a paragraph’s role can become stable while its wording remains revisable. They distinguished stable parts of an essay from material that should remain easy to change, prepared the reader for a table that itemized those categories, and supported the next paragraph’s opening: “Stable does not mean sacred.”
What stayed the same was not the paragraph’s language. It was the state of the argument before and after the paragraph.
That distinction gives technical writers a practical way to reason about flow. A paragraph begins from information and reasoning already available, performs a rhetorical responsibility, and leaves the argument in a condition the next component can use. You can rewrite every sentence and preserve that contract. You can also polish every sentence and still break it.
A Paragraph Changes What the Argument Can Assume
Software engineers already reason about work in terms of conditions before and after an operation. In his 1969 paper “An Axiomatic Basis for Computer Programming”, C. A. R. Hoare formalized a way to describe what must be true before a program runs and what will be true after it finishes, provided the program behaves as specified.
The formal notation is not the point here. The useful habit is to describe a component by more than its implementation. We identify what the component receives, what work it performs, and what condition it leaves for whatever runs next.
A paragraph supports similar reasoning, with an important limit. A reader is not a deterministic machine. You cannot know exactly what every reader understands, remembers, believes, or feels after reading a passage.
The relevant state is therefore not a private condition inside the reader’s mind. It is the information and reasoning the document has made available at a particular point. The argument may now contain a distinction, a definition, a conclusion, a question, or a piece of evidence that was not available one paragraph earlier.
Consider a short sequence in an architecture proposal:
- The first paragraph establishes that duplicate processing has caused inconsistent customer records.
- The second explains why the current retry mechanism permits the same event to run twice.
- The third recommends a unique request key that lets the system recognize and reject repeated processing.
The third paragraph may assume the failure and its cause because the preceding paragraphs established them. Move the recommendation to the opening, and its implementation may remain technically correct. Its position in the argument is not. The reader receives a solution before the document has supplied the problem and the mechanism that make the solution necessary.
The paragraph did not change. Its preconditions did.
Give the Paragraph a Contract
You can describe the state change with three questions:
| Contract element | Writing question | Software parallel |
|---|---|---|
| Preconditions | What information, definitions, or prior reasoning must already be available? | Inputs, assumptions, required context, and initialization |
| Responsibility | What must this paragraph establish, challenge, connect, clarify, or demonstrate? | Required behavior or logic |
| Postconditions | What must this paragraph make available for the argument to continue? | Output, side effect, or dependable resulting condition |
Return to the revised paragraph about stable structure. Its precondition is the earlier explanation that a paragraph’s role can become stable while its wording remains revisable. Its responsibility is to distinguish the stable structure of an essay from supporting material that should remain easy to change. Its postcondition is the distinction required to interpret the parent essay’s next table and its conclusion that stable does not mean sacred.
Both versions satisfy that contract. The revised version performs the responsibility more precisely, but the surrounding paragraphs can use either one. The replacement is compatible because it accepts the same prior context and leaves the same required result.
This model also exposes a common drafting problem. A paragraph can contain accurate sentences about one subject without producing a useful result. Topic gives the paragraph a neighborhood. Responsibility gives it a job.
Suppose a paragraph in a design proposal discusses caching, latency, request volume, and cost. Those ideas belong together topically. They may still serve four different decisions. If the following paragraph recommends a caching strategy based on peak request volume, the earlier paragraph must establish the relationship between volume and the proposed strategy. A collection of true facts about performance does not satisfy that responsibility by proximity.
The contract forces the writer to say what the paragraph contributes to this argument, in this position, for this reader.
Writing Scholarship Already Described the Handoff
The software vocabulary is an addition. The underlying behavior is not.
Thomas L. Kent’s “Paragraph Production and the Given-New Contract” describes the Given-New Contract as a theory of information transfer and applies it to unified, cohesive paragraphs. New information becomes usable when the reader can connect it to information already established.
That relationship operates inside a paragraph. One sentence introduces a system constraint. The next uses that constraint to eliminate an option. A third draws a conclusion from the remaining choices. Each sentence receives something the prior sentence made available.
The relationship also operates between paragraphs. A new paragraph can deepen a distinction, apply it to another case, challenge it with contrary evidence, or use it to reach a decision. It cannot perform that work coherently when the required distinction never appeared.
Context Is a Dependency develops the reader side of this handoff. It examines missing antecedents, undeclared prerequisites, and the difference between required context and background. The state-transition model asks the next question: once the context is available, what does this paragraph do with it, and what may the argument rely upon afterward?
A cohesive paragraph therefore does more than stay on topic. It changes the available state in a controlled way.
The Transition Makes Part of the Contract Visible
Writers often experience the connection between paragraphs as a transition. The transition and the contract are related, but they are not the same.
The contract governs the complete handoff. The transition is the wording or logical progression that makes part of that handoff visible.
Certain openings expose their preconditions immediately:
- However requires something available to qualify or oppose.
- The second reason requires a first reason and a shared question.
- That distinction requires a specific distinction with an unmistakable referent.
- As a result requires a cause that can support the stated consequence.
- The same constraint applies requires both an established constraint and a new case to which it can apply.
These phrases act like visible seams. They tell an editor what the paragraph expects to receive. If the prior text never supplied that information, the opening exposes a broken dependency.
The end of a paragraph can reveal the same problem from the other direction. If the next paragraph begins, “That makes the asynchronous option unacceptable,” the preceding paragraph must establish both the relevant fact and why it rules out that option. Mentioning asynchronous processing somewhere in the paragraph does not complete the handoff.
A smooth transition cannot repair missing reasoning. Adding therefore between two statements does not create causation. Adding in contrast does not identify a meaningful difference. The connective may make the passage sound more deliberate while leaving the actual relationship unstated.
Flow is not produced by connective tissue alone. Flow emerges when each component receives what it needs, performs its work, and leaves the next component prepared to continue.
A Valid Revision Preserves the Required Result
Barbara Liskov and Jeannette Wing’s “A Behavioral Notion of Subtyping” asks whether a substitute preserves properties on which a consumer of the original type depends. Compatible method names and signatures are insufficient when the behavior changes underneath them.
Paragraphs are not types, and a revision is not inheritance. The useful parallel is behavioral replacement through a preserved reader contract.
The preceding paragraph supplies the replacement’s preconditions. The following paragraph consumes its postconditions. The replacement remains compatible only when both handoffs survive.
The stable-structure revision is valid because both handoffs remain intact. The original version’s spine metaphor disappeared, but no surrounding paragraph depended upon the metaphor. The unclear pronoun disappeared, but no later component needed it. The replacement preserved the distinction the table required and made that distinction easier to use.
This is more demanding than asking whether the revision discusses the same topic. It asks whether the argument still works.
A writer can use that standard while changing almost anything else. You can replace an anecdote with data, replace a quotation with a direct explanation, reverse the order of two examples, or rewrite an awkward paragraph from a blank page. The revision is compatible when it starts from context the document has supplied, fulfills the paragraph’s responsibility, and leaves downstream dependencies intact.
The same standard applies when the revision improves the idea rather than merely the language. The postcondition may become more precise. The following paragraph may need a matching change because it can now use the stronger result. That is not a failed substitution. It is an intentional contract change whose effects have been followed through the argument.
The danger is changing the contract accidentally.
The Same Topic Can Produce the Wrong State
Replace the stable-structure paragraph with this one:
Invalid replacement
Essays change during drafting. Writers add sources, rework examples, change titles, and reorganize sections as research deepens. Revision is recursive, and no outline survives every new discovery.
The paragraph is accurate. It concerns revision, sources, examples, and changing structure. It may belong somewhere else in the essay.
It fails here because it does not distinguish stable structure from changeable support. In the parent essay, the next table now itemizes categories the preceding text never established. The paragraph after that begins with “Stable does not mean sacred,” but the replacement never introduced stability as a design goal.
The invalid replacement leaves the argument in the wrong state.
No amount of sentence-level polish will fix that failure. The paragraph needs a different responsibility, a different position, or additional material that produces the missing result. Its local quality is irrelevant to its compatibility.
This distinction matters during AI-assisted revision. “Make this paragraph clearer” invites the model to optimize the visible passage. The model may simplify wording, improve rhythm, and remove repetition while changing the distinction the next section requires. A useful revision request must include the paragraph’s responsibility and the downstream condition that must survive.
Local clarity is valuable. Compatibility is a whole-argument requirement.
Paragraphs Compose
The state-transition model becomes more useful when you stop treating paragraphs in isolation.
In Hoare’s reasoning, operations can be composed when the result of one establishes what the next operation requires. Paragraphs compose on the same practical condition. One paragraph’s postconditions satisfy some or all of the next paragraph’s preconditions.
Imagine an incident review with four paragraph contracts:
| Paragraph | Responsibility | Required result |
|---|---|---|
| 1 | Establish the customer-visible failure | The reader knows what happened and why it mattered |
| 2 | Identify the immediate technical mechanism | The reader can connect duplicate processing to the observed failure |
| 3 | Explain the organizational condition that allowed recurrence | The reader can see why the defect survived prior reviews |
| 4 | Recommend corrective action | The recommendation addresses both the mechanism and the enabling condition |
Each step limits what the next paragraph must rebuild. Paragraph 4 can propose a code change and a review change because Paragraphs 2 and 3 established two different causes. Remove Paragraph 3, and the recommendation may still contain both actions. The organizational action now appears unsupported.
That is why apparently local edits have structural effects:
- Splitting a paragraph creates a new seam. The first new paragraph must leave enough for the second to perform the remaining responsibility.
- Combining paragraphs merges contracts. The result may now have multiple reasons to change or an unclear postcondition.
- Moving a paragraph changes its available preconditions and may strand references where it used to be.
- Deleting a paragraph can remove a distinction, conclusion, or example that later components still use.
- Replacing a paragraph is safe only when the required handoffs survive.
The farther a postcondition travels, the easier it is to miss the dependency. A definition established in the introduction may support three later sections. A decision criterion introduced in one chapter may govern every example after it. Moving the definition or changing the criterion can affect paragraphs that share no visible transition with the edit.
Software engineers trace callers and consumers before changing a public contract. Writers need the same discipline around conclusions and definitions that later components reuse.
Work small. Change one relationship, then inspect the new handoffs. Move one paragraph, then read the paragraphs before and after it. Delete one explanation, then search for later references to its terms and conclusions. A short revision cycle makes the effects easier to see.
Readers Are Not Deterministic Systems
The analogy breaks if we pretend paragraphs execute inside readers with predictable results.
A program can guarantee a postcondition under stated assumptions. A paragraph cannot guarantee comprehension, agreement, outrage, confidence, or action. Readers bring different knowledge, attention, motives, and interpretations to the page.
The paragraph contract governs what the document provides, not what every reader experiences. A paragraph can provide the evidence needed to evaluate a conclusion. It cannot ensure the reader accepts the evidence. It can define a term before using it. It cannot ensure the reader remembers the definition fifty pages later.
The final paragraph in a section or complete piece has a postcondition even when no later paragraph consumes it. Its consumer is the intended reader outcome: a conclusion available for evaluation, a decision supported, or an action made possible.
That limit keeps this diagnostic method honest. You inspect whether the premise appears, whether the referent is identifiable, whether the causal connection is explained, and whether the next paragraph receives the distinction it uses. Those conditions are visible in the text.
Reader response still matters. If representative readers repeatedly misunderstand a passage, the contract may be poorly implemented even when every required sentence appears. Their questions supply evidence that the writer’s intended handoff is not the handoff the page creates.
The model is a diagnostic lens, not a theory of consciousness. It gives writers a precise language for relationships that would otherwise be discussed as a vague sense of flow.
Trace the State Change
When a paragraph feels awkward, do not begin by polishing it. Trace its contract.
- Name the available state. Write down the information, definitions, distinctions, and prior conclusions this paragraph may reasonably assume.
- State the responsibility. Complete the sentence, “This paragraph must…” with its governing rhetorical purpose. The paragraph may produce several effects when they serve that purpose and would change for the same reason.
- Name the required result. Identify what the following paragraph or section needs this paragraph to make available.
- Inspect the visible transition. Check every connective, demonstrative, and numbered reference for the precondition it exposes.
- Compare intention with implementation. Verify that the paragraph actually establishes its required result rather than merely discussing the same subject.
- Follow the downstream effects. After moving, deleting, splitting, combining, or replacing the paragraph, inspect every component that depends on its terms or conclusions.
If the paragraph has no clear responsibility, you may not yet know what you are trying to say. If it has two responsibilities with different dependencies, split it. If it produces a result no later component uses, cut it or give it work of its own. If the next paragraph requires something the current one never establishes, add the missing reasoning or change the sequence.
This process turns flow from an aesthetic verdict into a set of relationships you can inspect. The writing may still need rhythm, voice, and sentence-level care. Those qualities improve how the reader experiences the path. They do not create the path.
A paragraph belongs where its preconditions are available and its postconditions are needed.
That is the architecture beneath the flow.
Receipts
- Preconditions and postconditions: C. A. R. Hoare’s “An Axiomatic Basis for Computer Programming” formalizes reasoning about assertions before and after program execution. The paragraph contract is this project’s practical writing analogy, not a method of formally proving reader response.
- Paragraphs as information transfer: Thomas L. Kent’s “Paragraph Production and the Given-New Contract” applies the Given-New Contract to paragraph production and connects unified, cohesive paragraphs with effective information transfer.
- Behavioral replacement: Barbara Liskov and Jeannette Wing’s “A Behavioral Notion of Subtyping” defines subtyping through preserved properties and observable behavior. Applying that replacement model to paragraph revision is this project’s analogy.
- First-party revision artifacts: The stable-structure before, after, contract, and invalid replacement come from the documented revision history of The Architecture of Nonfiction. They illustrate the model; they are not findings attributed to Hoare, Kent, Liskov, or Wing.