# Question 2763: Area of a Union of Two Half-Open Integer Rectangles

[Return to catalogue page 14](https://ocme.evemisslab.com/en/questions/page/14/)

[← Question derivation index](https://ocme.evemisslab.com/en/questions/) · [Original question batch](https://ocme.evemisslab.com/en/practice/batch-20261005-advance-20261006-r06-area-foundations/#q-20261005-advance-20261006-r06-area-0088)

This teaching derivation has second-context AI mathematical and bilingual semantic review, limited to the model and assumptions stated in this question. It has no human review or new Lean proof and does not promote the original question or MKO to Canonical truth.

R0004-02763 · q-20261005-advance-20261006-r06-area-0088



## Original question and givens

Use one equal-unit orthonormal Euclidean Cartesian frame. A=[0, 0)×[0, 9) and B=[1, 5)×[2, 5) are half-open rectangles. Find area(A∪B) in squared length units.


- G001 — Use one equal-unit orthonormal Euclidean Cartesian frame. A=[0, 0)×[0, 9) and B=[1, 5)×[2, 5) are half-open rectangles. Find area(A∪B) in squared length units.





## Definition and scope

Use the original question domain, assumptions and cited MKO definitions. This item has second-context mathematical and bilingual review, with the model, answer and every arithmetic step independently recomputed from the original parameters; the source question remains a candidate.


- [mko-area](https://ocme.evemisslab.com/en/mko/mko-area/)





## Step-by-step derivation

S001 · impliesBefore

orthonormal equal-length coordinate units;half-open regions

After

area in squared length units

Conditions: none

Axes are orthogonal with equal length units;half-open boundaries make adjacent unit cells disjoint.Area uses squared units,not length units.

Step identifiers and dependenciesRule: half_open_area_convention · Uses: G001





S002 · calculationBefore

A width := sub(0, 0)

After

A width = 0

Conditions: none

Right minus left is the nonnegative width;translation of the origin contributes no area.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S001





S003 · calculationBefore

A height := sub(9, 0)

After

A height = 9

Conditions: none

Top minus bottom is the nonnegative height,using endpoints of the same rectangle.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S002





S004 · calculationBefore

A area := mul(0, 9)

After

A area = 0

Conditions: none

Rectangle area is width times height;a zero side makes the half-open rectangle empty,with area0.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S003





S005 · calculationBefore

B width := sub(5, 1)

After

B width = 4

Conditions: none

Right minus left is the nonnegative width;translation of the origin contributes no area.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S004





S006 · calculationBefore

B height := sub(5, 2)

After

B height = 3

Conditions: none

Top minus bottom is the nonnegative height,using endpoints of the same rectangle.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S005





S007 · calculationBefore

B area := mul(4, 3)

After

B area = 12

Conditions: none

Rectangle area is width times height;a zero side makes the half-open rectangle empty,with area0.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S006





S008 · calculationBefore

overlap raw width := sub(0, 1)

After

overlap raw width = -1

Conditions: none

Use the smaller right endpoint and larger left endpoint for the intersection.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S007





S009 · calculationBefore

overlap raw height := sub(5, 2)

After

overlap raw height = 3

Conditions: none

Use the inner vertical endpoints in the same way.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S008





S010 · impliesBefore

raw overlap widths=(-1,3)

After

nonnegative overlap widths=(0,3)

Conditions: none

Disjoint or edge-touching rectangles have intersection area0;two negative raw widths must not create a fictitious positive area.

Step identifiers and dependenciesRule: empty_intersection_clamp · Uses: G001, S009





S011 · calculationBefore

intersection area := mul(0, 3)

After

intersection area = 0

Conditions: none

Multiply the clamped nonnegative intersection lengths.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S010





S012 · calculationBefore

sum of rectangle areas := sum(0, 12)

After

sum of rectangle areas = 12

Conditions: none

First add the rectangle areas;the intersection is then counted twice.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S011





S013 · calculationBefore

union area := sub(12, 0)

After

union area = 12

Conditions: none

Finite inclusion-exclusion subtracts the intersection once,so each region is counted once.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S012





S014 · impliesBefore

A∪B=(A\B) disjoint-union B

After

area(A∪B)=12

Conditions: none

The rule covers containment,equal or empty rectangles,disjointness and overlap;plain addition is invalid when positive-area overlap exists.

Step identifiers and dependenciesRule: rectangle_union_inclusion_exclusion · Uses: G001, S013









## Reverse checks


- S014 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S013 · premise_and_result_audit — Recompute union area with exact rational arithmetic, not rounded decimals.
- S012 · premise_and_result_audit — Recompute sum of rectangle areas with exact rational arithmetic, not rounded decimals.
- S011 · premise_and_result_audit — Recompute intersection area with exact rational arithmetic, not rounded decimals.
- S010 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S009 · premise_and_result_audit — Recompute overlap raw height with exact rational arithmetic, not rounded decimals.
- S008 · premise_and_result_audit — Recompute overlap raw width with exact rational arithmetic, not rounded decimals.
- S007 · premise_and_result_audit — Recompute B area with exact rational arithmetic, not rounded decimals.
- S006 · premise_and_result_audit — Recompute B height with exact rational arithmetic, not rounded decimals.
- S005 · premise_and_result_audit — Recompute B width with exact rational arithmetic, not rounded decimals.
- S004 · premise_and_result_audit — Recompute A area with exact rational arithmetic, not rounded decimals.
- S003 · premise_and_result_audit — Recompute A height with exact rational arithmetic, not rounded decimals.
- S002 · premise_and_result_audit — Recompute A width with exact rational arithmetic, not rounded decimals.
- S001 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.





## Result

12

The full substitutions and premise checks give the original answer; source identity,format and status are unchanged.





## This question review and source binding

Review date: 2026-10-26

Original questions, answers, step expressions, numeric ASTs and historical records are retained. Source candidate labels remain historical and are not overwritten as formal proof.

Source hashes and review receipts
- input commit: 0f7be61e2c22317a4075561dc822c87d881a50db
- original question SHA-256: be98cae3e1d3de8bc209119eae90952336659b8336745913390f1fdc4d8ce9b8
- candidate record SHA-256: 4d2c8f7a5a6d4ea9037de9a508f278756fff970ca8b7e1ff80b5b17f1928c56f
- semantic review receipt SHA-256: 312ae86315346b8955842a547cb2d09246e1f826755f72c2a51f042e5c7d5c56
- question-first witness SHA-256: 831f449ed41ff9144a290e534aa32adf7252d15b81c16ed5886a7dfd65dee70c
- Lean: NOT_RUN · human review: NOT_PERFORMED

[Same-source full JSON](https://ocme.evemisslab.com/data/question-derivations/questions/q-20261005-advance-20261006-r06-area-0088.json)




