A Methodology for Constructing and Verifying Solid Boundaries Using Parametric Surfaces in GeoGebra 3D ()
1. Introduction
Formulating a multiple integral requires identifying both the integrand and the region of integration. In three-dimensional problems, this task involves relating surface equations, planar projections, and integration limits. The treatment of integrals over general regions and solids described by inequalities between functions provides the mathematical basis for this relationship [1] (Sections 5.2 and 5.4).
In mathematics education, Duval [2] distinguishes transformations within a representation register from conversions between registers. For the problem considered here, manipulating inequalities is not equivalent to interpreting their spatial representation. Arcavi [3] examines the roles of visualization in mathematical activity and the difficulties it can also introduce. These perspectives support activities connecting expressions, parameterizations, and figures, without assuming that viewing an image alone produces conceptual understanding.
Directly related studies already exist. de Carvalho et al. [4] present GeoGebra constructions for double integrals, emphasizing Riemann sums in two variables. Linares-Rodríguez et al. [5] describe a Maple interface for visualizing solids, their projections, and the faces associated with triple integrals. Consequently, using software to represent integration regions is not a novel contribution.
This study proposes a more specific methodological contribution: organizing the construction of the boundary of a solid from a parameterized planar region while preserving the distinction between actual contours, auxiliary subdivisions, and surfaces that bound the region. The sequence includes domain-coverage criteria, matching-edge checks, and integral verification. The purpose is not merely to obtain an image, but to explain what each object represents and why it belongs to the boundary.
GeoGebra provides commands for creating parametric surfaces and curves with independent parameter ranges [6] [7]. In this paper, the software is described as freely accessible for noncommercial use. Its official license distinguishes source code from installers, services, and other components; therefore, access to the complete product at no cost is not equated with free software in the strict licensing sense [8].
The objective is to formulate a reproducible methodology for constructing and verifying boundaries of solids that are simple with respect to
, with proposed applications to multivariable differential calculus, multiple integration, and vector analysis. The guiding question is as follows: How can a planar description and two height functions be transformed into a collection of surfaces and curves whose union represents the complete solid boundary without introducing artificial interior walls?
2. Problem Definition
Let
be the closure of a bounded planar region with nonempty interior and a boundary consisting of finitely many simple closed, piecewise-regular curves. Interior boundary components enclosing holes are allowed. Let
be continuous functions satisfying
on
and
in the interior of
. Consider the solid
(1)
The differentiability required for derivatives, areas, and fluxes is assumed on each relevant patch. The height functions in the three main examples are polynomials; a trigonometric parameterization is introduced in the additional horizontal-cylinder case. The lower graph over
is called the floor, the upper graph is called the roof, and the vertical surfaces along the actual contour are called the walls. These are geometric descriptions: the floor need not coincide with z = 0 or be planar.
The problem is to construct parametric patches whose union is
, together with the curves where the boundary components meet. It does not require a native volumetric object, Boolean operations, or a finite-element mesh. The represented boundary mathematically delimits the solid but should not be confused with a solid model in a computer-aided design (CAD) system.
The scope is restricted to regions whose intersection with each vertical line is empty or a single interval. A solid with several separated vertical intervals requires further decomposition; some regions may be simplified by changing the projection direction. The procedure does not automatically solve the surface intersections that determine
: identifying them remains part of the mathematical formulation.
Extension by subregion. When the floor and roof coincide at interior points of the global base, the main result is applied to subdomains in which the height is strictly positive at interior points. In E10, with roof z = x2 and floor z = 0, the halves x ≤ 0 and x ≥ 0 are treated separately. The contact set x = z = 0 has zero height and generates no wall. This extension does not justify retaining partition walls where the height is positive; such walls must be excluded from the boundary of the combined set.
3. Theoretical Framework
3.1. From the Planar Domain to the Height Surfaces
A parametric surface is expressed by a mapping
. Where
, its derivatives determine a tangent plane and a normal direction. Surface integrals are formulated from this representation [1] (Section 6.6).
Suppose a family of mappings
covers the base, where
and the interiors of the subdomains do not overlap. The parameter domains
are rectangular. The lower and upper lifts are defined as
(2)
Composition with
and
restricts the surfaces to the parameterized base. The domain is triangulated or partitioned; the surface is not replaced by interpolating planes. If
is nonlinear, evaluating
preserves the exact mathematical graph, whereas interpolating only the vertex heights defines a different surface. The software renders a discretization of that mathematical definition; the rendered image is not proof of geometric exactness.
3.2. Parameterizing the Base
For a region between two graphs,
one may use
and
, with
. The Jacobian is
. This converts dependent limits into independent intervals. The relationship between the domain description and the change of variables is developed in [1] (Sections 5.2 and 5.7).
A type II region can also be parameterized directly:
The parameterization is selected before decomposition: exact transverse interpolation is used between two graphs; Equation (3) is used for a triangle; a verified partition is used for concave polygons; and polar coordinates are used for disks or annuli. If the height vanishes in the interior, the need for decomposition into subregions is assessed first. Triangulation is not prescribed when direct parameterization is sufficient.
For a triangle with noncollinear vertices
, barycentric coordinates express each point as
, with nonnegative coefficients summing to one. Set
to obtain the transformation
(3)
Up to changes of variables and vertex ordering, this square-to-triangle map is equivalent to Duffy-type transformations used in numerical integration [9] [10]. Here, it is adapted to construct surfaces with independent parameter ranges.
The coefficients in Equation (3) are nonnegative and sum to one, so the image lies within the triangle. Conversely, for any point with barycentric coordinates
satisfying
, choose
and
. Vertex
is obtained with
. Hence, the image is the entire triangle.
The corresponding determinant is
(4)
The transformation is regular in the interior, but the edge
collapses to
. It is not a diffeomorphism of the closed square. This degeneracy is confined to the parameter boundary and must be recognized when discussing normals or changes of variables; it does not prevent coverage of the triangle.
A simple polygonal base can be decomposed into triangles with disjoint interiors. Polygon triangulation and its algorithms are discussed in de Berg et al. [11] (Chapter 3). For a concave base, an arbitrary fan of diagonals must not be assumed to remain inside the polygon. Containment, non-overlap, and coverage must be checked. Equality of areas alone does not replace these checks.
3.3. Walls, Edges, and Boundary Coverage
Let
parameterize a portion of the actual contour of
. The associated wall is obtained by vertical interpolation:
(5)
The settings
and
recover the lower and upper boundary curves, respectively:
(6)
At each vertex of a polygonal contour, the vertical segment between the lower and upper heights may be added. If the heights coincide, the segment reduces to a point and is not a vertical edge of positive length. A smooth closed contour has no vertices requiring vertical edges.
Boundary-coverage proposition. Under the assumptions of Section 2, if the images of
cover
and the curves
cover
, then
(7)
Proof. The continuity of
and
, together with the compactness of
, implies that
is closed. A point satisfying
and
is an interior point: continuity preserves the strict inequalities in a sufficiently small neighborhood. In contrast, a point with
or
is not interior, because a vertical displacement in an appropriate direction leaves the solid. A point whose projection lies on
is also not interior, because every neighborhood of its projection contains points outside
. Thus, the boundary consists precisely of the two graphs and the vertical intervals over
. Equations (2) and (5) cover these sets. The component surfaces may share edges or contact points without affecting this equality.
The proposition explains why walls are not constructed over every triangulation edge. An interior edge merely separates two parameterizations of the same base. Lifting it into a wall would add a surface that, except for particular degeneracies, does not belong to
.
3.4. Jacobians, Orientation, and Integral Quantities
The volume is calculated from the difference between the height functions. For parameterizations that are injective in the interior, with overlaps restricted to sets of zero area,
(8)
The absolute value of the Jacobian prevents an orientation reversal from being mistaken for a negative volume. This expression follows from the change-of-variables formula for multiple integrals [1] (Section 5.7).
For the roof, the chain rule gives
(9)
When
, this cross-product points upward and defines the outward orientation of the roof. The floor requires the opposite orientation. If
, the normal cross product for a wall is
(10)
Traversing the contour with
on the left makes Equation (10) point outward from the solid. This requires counterclockwise traversal of the outer contour and clockwise traversal of the contours surrounding holes. Where
, the wall parameterization loses rank; the normal is interpreted only at regular points.
These relations connect the construction with tangent planes, lateral areas, and flux integrals. For a closed piecewise-regular boundary and a field satisfying the usual assumptions, the divergence theorem relates outward flux to an integral over the volume [1] (Section 6.8). Mathematical orientation must be checked explicitly: screen shading does not determine the sign of a flux integral.
4. Methodology
4.1. Study Design and Execution Environment
The study combines mathematical analysis with author-reported operational testing of fourteen cases: three original examples and eleven textbook exercises. The set is purposive and illustrative, not random or exhaustive. Mathematical verification, operation in GeoGebra, and educational evaluation are distinguished; no student intervention or comparison between software packages, groups, or computers is reported.
Selection rationale. The eleven textbook cases are admissible because their bounded solids can be written as a vertical interval over a planar domain, globally or after the explicit decomposition used in E10; their bases and contour curves admit finitely many explicit parameterizations; and their volumes provide tractable analytical reference values. E04 - E12 retain the contiguous block of Exercises 19 - 27 in [12], E13 adds a curved-wall case with a zero-height floor-roof edge from the same book, and E14 adds two parabolic walls at constant positive height from [13].
Mathematical verification addresses domain coverage, Jacobians, matching traces, volumes, and outward flux in the annular case. Appendix B and Appendix C provide reproducible integral checks; exact volumes are analytical reference results, not measurements from screenshots. Operational findings are presented separately as consolidated author observations, supported by supplied construction files and images, rather than as a contemporaneous execution log.
Jesús N. Zaragoza-Grifé reported performing the tests between September 3 and 15, 2026, in the environment in Table 1. He reported successful file opening, reconstruction from commands, geometric inspection, saving, and reopening for all fourteen cases, without incidents. No contemporaneous operation-level log was supplied: exact timestamps, repetition counts, and invariant-by-invariant C3 results are unavailable. Appendix tabulates the report retrospectively and explicitly labels each outcome as PASS_REPORTED; it does not reconstruct missing observations.
Table 1. Reported execution environment and provenance of the operational observations.
Field |
Reported information |
Application |
GeoGebra Classic 6.0.920.0 for Windows |
Operating system |
Windows 10 Home Edition |
Language |
English |
Period |
September 3-15, 2026 |
Tester |
Jesús N. Zaragoza-Grifé |
Cases |
14 distinct geometric configurations |
Available evidence |
Consolidated author observations, 14 PNG screenshots, and 14
author-supplied .ggb files; no contemporaneous operation-level log |
Table 2. Case-selection rationale and methodological coverage. Detailed pass/fail conditions are given in Appendix E.
Case/source |
Condition represented in the validation set |
E01 Original |
Square-to-triangle collapse with strictly positive height; nonlinear roof evaluation. |
E02 Original |
Concavity; patch coverage; exclusion of interior partition walls; isolated zero-height vertex. |
E03 Original |
Hole; periodic angular seam; nonplanar floor; interior-boundary orientation. |
E04 [12] |
Type-I curvilinear base; collapsed endpoints with different heights. |
E05 [12] |
Type-II curvilinear base; correct ordering of cubic and quadratic bounds. |
E06 [12] |
Translated triangle; exact nonlinear roof rather than vertex interpolation. |
E07 [12] |
Triangular collapse at a zero-height vertex; nonzero adjacent walls. |
E08 [12] |
Entire zero-height boundary edge; tetrahedral closure. |
E09 [12] |
Base closure derived from height ordering; zero-height straight edge. |
E10 [12] |
Interior zero-height contact; decomposition into two subregions; both signs retained. |
E11 [12] |
Cylinder axis parallel to x; first-octant branch; zero-height edge. |
E12 [12] |
Quarter-disk polar map; real angular boundaries versus periodic seam; origin collapse. |
E13 [12] |
Curvilinear base; both signs of y; zero-height floor-roof edge. |
E14 [13] |
Two parabolic arcs; full signed interval; collapsed base endpoints at positive height. |
The condition mapping in Table 2 characterizes the assembled set retrospectively; it is not a preregistered sampling plan. The eleven textbook cases exercise curved bounds, translated triangles, height contacts, decomposition and coordinate restrictions. Concavity and the exclusion of triangulation walls are principally tested by the original E02 example; a hole and a periodic seam are tested by original case E03. The textbook subset is not claimed to cover those features independently. No conclusions are drawn about untested geometries or failure rates outside this set.
4.2. Structure of Reproducible Construction
This methodology is a manual, mathematically guided construction protocol implemented with GeoGebra commands, not a general algorithm for solving arbitrary surface equations. Users must derive the base patches and their domains, parameterizations of every actual boundary component, the ordering of the height functions, and any decomposition required by concavity, height interchange, or interior zero-height contacts.
Once those inputs have been established, the lifting and wall formulas are systematic. The construction has four components: the planar region and its contour; the height functions; the patch parameterizations; and the objects representing faces and traces. For a polygonal base, vertices are stored in a closed contour list
, while triangles are stored separately in
. Lists may automate repetition of formulas, but do not derive the mathematical inputs or certify their admissibility.
The triangulation generates n floor patches and n roof patches, while the contour generates the walls and edges. If each of the m boundary segments has positive height on some interval, the construction has 2n + m surface patches before further subdivision. This count excludes curves and auxiliary objects and is not a performance measure. A boundary segment along which the height is identically zero contributes a curve rather than a wall of positive area. For a base with holes, all boundary components must be included.
This separation makes geometric decisions explicit: changing
or
changes the heights, changing
changes the contour, and changing
changes the partition. Each change requires rechecking coverage, orientation, and height ordering. The complete inputs and commands remain in the paper for reconstruction under C2. Repeating C1, however, requires the distributed file in Appendix; printed commands alone cannot reproduce that file-opening claim.
4.3. Construction Sequence
Stage 1. Formulate the solid. Specify
,
, and
, identify the required intersections, and establish
over the base. If the surfaces exchange their order, reformulate or partition the region before constructing it. Heights retain their signs: the solid need not lie above the xy-plane.
Stage 2. Parameterize the base and identify its contour. Identify the vertices or curves that delimit the base, any holes, and the direction of traversal. Choose a direct parameterization when the geometry permits; use triangulation for a general polygonal base. Keep auxiliary subdivisions separate from the actual boundary.
Stage 3. Lift to the floor and roof. Apply Equation (2) to each patch. Enter the three coordinate expressions in the Surface command, using two local parameters with independent finite ranges. Do not create sliders for these local parameters. The documentation excludes x, y, and z as parameter variables; s, t, q, and r are used instead [6].
Stage 4. Construct walls and edges. Apply Equation (5) only to the actual contour and Equation (6) to the intersections with the floor and roof. The Curve command constructs spatial curves, and the Segment command connects the endpoints of a straight edge. In periodic domains, distinguish the physical boundary from a coordinate seam [7] [14].
Stage 5. Organize the visualization. Identify faces by name rather than exclusively by color. Adjust opacity and temporarily hide faces to inspect the interior. The SetFilling command controls opacity between zero and one [15]; the SetVisibleInView command controls visibility in the 3D view, identified by −1 [16]. Hiding xOyPlane does not remove the constructed floor patches.
Stage 6. Verify mathematically. Check coverage without interior overlap, the absence of auxiliary walls, agreement along shared edges, and normal orientation when calculating fluxes. Compare at least one integral quantity with an independent evaluation, not with the appearance of the image.
Stage 7. Validate interactively and document the results. For a new replay, apply the acceptance conditions in Section 4.5 and Appendix E, record each operation and its evidence, resolve incidents, and repeat affected checks. Distinguish these operation-level records from the consolidated author observations available for the earlier tests. A classroom activity can then be prepared without assuming that operational success establishes learning effectiveness.
4.4. Command Entry and Reconstruction from Scratch
The tests were performed using GeoGebra Classic 6.0.920.0 for Windows, in English. The Algebra and 3D views support entering and inspecting the constructions. Published command names follow the English manual; the Australian English variant uses Interval instead of Segment [14]. Each case is reconstructed in an empty construction, and each instruction is confirmed separately.
In the Surface command, the first three expressions define
,
, and
; these are followed by the first parameter and its lower and upper limits, and then by the second parameter and its limits. The Curve command takes three coordinate expressions, one parameter, and its limits. Listings A.1 - A.3 contain complete expressions without auxiliary functions or sliders. A long instruction may wrap across printed lines, but it must be entered as a single command, without added hyphens or line numbers.
Listings A.1 - A.3 and C.1 - C.11 give explicit-object reconstructions for C2. The preserved files used for C1 may organize equivalent geometry differently: E02 generates floors and walls in lists, whereas A.2 defines those patches individually. Compare geometric roles and traces, not identical object names, auxiliary objects, or XML-element counts. This is not a fifteenth case or a geometry-solving algorithm. Appendix includes the correspondence between native objects and printed constructions.
4.5. Operational Checks and Result Documentation
C1. File opening. Identify the release file by case ID, version, and SHA-256 in the supplementary manifest; open that file in the recorded GeoGebra environment. Pass if the construction loads without an error and the expected geometric families are available. Fail on a loading error or a missing family. A hash mismatch is an artifact-identity failure and must be resolved before attributing the test to that release. This check is distinct from reconstruction from scratch.
C2. Reconstruction from commands. Enter the complete listing for the case in an empty construction. Pass if the commands are accepted and produce the specified geometric roles and domains without a construction error; fail otherwise. Object names and grouping need not match the native file. The earlier completion of this operation is an author report, not an automated console log.
C3. Geometric inspection. Inspect the actual definitions and parameter ranges in the Algebra view, rotate the construction, and isolate the roof, floor, and walls as needed. Check the four invariant groups below against the case-specific conditions in Appendix E. These are the acceptance conditions for a reproducible replay; the earlier author report establishes only that geometric inspection was reported, not that each newly explicit invariant was individually logged.
C3.1. Boundary coverage. The base-patch images must cover the declared domain, with pairwise disjoint interiors. Their lifts must be the specified floor and roof, and the walls must cover every positive area, part of every actual contour component, including inner contours. Check formulas and ranges as well as isolated views. Any omitted component, inadmissible range, gap, or filled hole is a failure; matching the total volume or object count alone is insufficient.
C3.2. Matching traces. For every contour segment, the wall at q = 0 must equal the floor trace and at q = 1 must equal the roof trace. Adjacent patch traces must represent the same curve, allow a stated reversal or change of parameter, and endpoint joints must coincide. Establish equality over the entire parameter interval from the expressions; point sampling or apparent overlap in a projection alone does not establish it. A nonzero symbolic discrepancy or a mismatched endpoint is a failure.
C3.3. Exclusion of interior walls. Every positive area wall must project onto an actual contour of the combined base. No wall may be retained over an interior triangulation edge, an artificial partition, or a periodic parameter seam. Identify each wall by its geometric role; helper points and duplicate curve displays are not extra faces. A positive-area spurious wall is a failure even if the volume remains correct.
C3.4. Seams and zero-height contacts. Periodic endpoint traces must coincide without creating a wall; real angular boundaries must not be discarded as seams. Where f = g, the image is the prescribed contact curve or point, not a wall of positive area. A collapsed base edge with positive height instead produces the appropriate vertical joint. Apply the distinct conditions for each case in Appendix E. A missing joint, false cap, unintended branch, or misclassified contact is a failure.
C3.5. Decision and evidence. Record PASS only when all four applicable invariant groups are checked and satisfied; record FAIL for a violated condition and NOT_ASSESSED when a check or its evidence is missing. Retain the object definitions, trace derivations and relevant views as evidence. No pixel-based tolerance is specified or measured. These revised acceptance conditions must not be retrospectively assigned PASS merely because a historical screenshot exists.
C4. Saving. Save the construction to a working-copy path, preserving the released original for identity checks. Pass if GeoGebra completes the save operation and produces a file; fail if it reports an error or no file is created. Record the path and outcome of the new operation.
C5. Reopening. Close and reopen that saved working copy. Pass if it loads without an error and retains the intended geometric definitions and boundary roles; fail otherwise. Saving can change file bytes without changing the geometry, so the new working copy is not required to have the original release checksum. This persistence check concerns the tested environment, not cross-version compatibility.
Graphical evidence. One screenshot from the author-reported execution is included for each case. The images document the resulting appearance, but an isolated projection cannot verify every face or replace analytical identities. The supplied images do not include a complete set of plans, full-solid and roof-hidden views for every case. Such additional views are proposed for a new replay; they are not retrospectively attributed to the available observations.
Historical observations versus replay outcomes. A new replay is accepted only when C1 - C5 meet their stated conditions and C3 contains no failed or unassessed invariant. The historical ratio describes the reported set only, not a universal success probability or rendering accuracy.
Traceability. Stable identifiers E01 - E14 link the matrix, problem statements, commands, figures, and supplementary files. Cases E04 - E13 are drawn from [12], and E14 is drawn from [13]. For each case, Appendix supplies a versioned .ggb file, the original filename, a SHA-256 checksum, and a mapping of object roles. The release label v1.0.0 identifies the supplied payload and was assigned during revision; it is not the software build or a test-time version label.
Observation-table provenance. The supplementary CSV contains 70 rows, one for each case-operation pair, with C1 - C5, software build, tester, reported date range, reported outcome, and incident note. Every row is labeled CONSOLIDATED_AUTHOR_OBSERVATION and PASS_REPORTED. Exact timestamps, repetition counts, invariant-level findings, and test-time file hashes are marked as not recorded. The table is a retrospective tabulation of the author’s statement, not a substitute for a contemporaneous raw log. Packaging-time checksum, ZIP and XML checks are separately identified and do not constitute GeoGebra execution. Testing by an author is not independent third-party reproduction.
4.6. Preparation for a Subsequent Classroom Activity
Based on the consolidated operational observations, a 90-minute pilot classroom activity is proposed; this duration is planned, not measured. The proposed schedule allocates 10 minutes to a diagnostic task, 15 minutes to formulate the base and heights, 35 minutes to construction, 20 minutes to justifying edges and integrals, and 10 minutes to an individual transfer task. The triangular example can introduce the procedure, whereas the L-shaped base or annulus can be used to assess its application to a new difficulty. The instructor should adapt the sequence to the group’s prior knowledge of multivariable calculus.
Student work would be assessed against four criteria scored from 0 to 2: identifying the domain and heights; matching parameterizations to surfaces; selecting walls and edges; and justifying a volume or flux. Zero denotes missing or incorrect work; one denotes partial work with errors; and two denotes correct, justified work. Problems with software use would be distinguished from conceptual errors. This instrument is proposed for piloting and has not been validated; its descriptive use alone would not demonstrate a causal learning improvement.
5. Results
The results combine three main examples, eleven additional cases, mathematical checks, and consolidated operational observations reported by the tester. Complete listings appear in Appendix A and Appendix C, with main calculations in Appendix B. Figures 1-3 show the original examples; Figures A1-A3 group the textbook cases. Section 5.5 presents the author-reported operations separately from analytical quantities, and Appendix E makes the geometric acceptance conditions checkable without presenting them as historical per-invariant measurements.
5.1. Example 1: Solid over a Triangular Base
Step 1. Formulation. Consider
Since
, the solid has positive height throughout the base. The planar vertices are
,
, and
.
Step 2. Parameterization and lifting. Applying Equation (3) gives
The roof and floor are defined by
The first two lines of Listing A.1 create these patches. Setting
collapses a parameter edge to vertex
, without generating an additional wall.
Step 3. Walls. The boundary curves are
,
, and
. Equation (5) gives
The next three lines of Listing A.1 represent these walls. The upper edges are obtained by setting
, and the lower edges by setting
; three vertical edges are also constructed at the vertices.
Step 4. Verification. Cartesian integration and change of variables give the same value:
The boundary has five patches: one roof, one floor, and three walls. As a conceptual check, interpolating the vertex heights would produce the plane
and volume 5/6, which do not correspond to the specified solid. The relative error would be 25%. This comparison is an analytical result, for example, not a measurement of GeoGebra accuracy.
Figure 1. Case E01: roof z = 1 + x2 + y2 over the triangle x ≥ 0, y ≥ 0, x + y ≤ 1, with floor z = 0. Evaluating the function preserves the curvature of the roof; no plane is interpolated through the vertex heights. The screenshot supplied by the tester is a projected view, not a measurement of area or volume. Corresponding colors to each axis: {X, Y, Z} = {Red, Green, Blue}; from here, all figures with solid boundary representations use the same color codes to avoid overcharging figures with axis labels.
Step 5. Operational observations. The author reported completing C1 - C5 for E01 without incidents. The definitions in A.1 yield five surfaces, six boundary curves, and three vertical segments; these counts are derived from the expressions. Figure 1 shows the supplied execution view. The explicit C3 replay conditions are listed in Appendix E.
5.2. Example 2: Solid over a Concave L-Shaped Polygonal Base
Step 1. Formulation. Define the vertices
The base and height functions are
The contour
is counterclockwise. The height vanishes only at
, where the floor and roof meet. No positive-length vertical edge should be added there.
Step 2. Separate the triangulation from the boundary. Use the partition
Edges
,
, and
are interior and occur in two triangles. Edges
,
,
,
,
, and
each occur once and form the contour. These edge-incidence counts identify which walls to construct and which to exclude.
Step 3. Parameterize the four triangles. The components of Equation (3) simplify as shown in Table 3; in every case,
.
Table 3. Parameterizations and exact checks for the L-shaped base.
Triangle |
|
|
Area |
Volume under
|
|
|
|
1/4 |
1/12 |
|
|
|
1/4 |
1/12 |
|
|
|
1/8 |
5/48 |
|
|
|
1/8 |
5/48 |
The Jacobians are
for the first two triangles and
for the remaining two. The roof is constructed as
and the floor as
. The first eight commands in Listing A.2 define these patches without approximating the paraboloid by planar faces.
Step 4. Close the boundary with six walls. In contour order, use
The height on each wall is
. Listing A.2 includes six walls, six upper and six lower edges, and five positive-length vertical edges.
Step 5. Check the solid. The areas sum to 3/4, and the volumes in Table 3 sum to 3/8. An independent Cartesian decomposition confirms
Fourteen boundary patches are obtained: four roof patches, four floor patches, and six walls. The restriction preserves the concavity; no patch should occupy points with
and
. To check the exact nature of the lifting, the volume obtained by linearly interpolating heights over the same triangles was also calculated. It would be 23/48, a relative excess of 5/18, approximately 27.78%, over the original solid.
Step 6. Operational observations. The author reported completing C1 - C5 for E02 without incidents. The explicit reconstruction yields fourteen surface patches, twelve exterior graph traces, and five nondegenerate vertical joints. In the supplied file, roofs a - d are individual objects, while Piso and Paredes contain four floor patches and six walls; graph traces need not be separate objects. Geometric inspection must preserve the concavity and exclude walls over AD, BD, and DF. Figure 2 shows the supplied construction.
Note on parameter exploration. If a moving point is added using barycentric weights
, the independent intervals
are insufficient:
is also required. To explore the entire triangle without this coupled restriction, use
. These exploration parameters should be distinguished from the local variables in the Surface command; they are not required to execute the published listings.
Figure 2. Case E02: solid under z = x2 + y2 over a concave L-shaped base. The four roof patches and four floor patches share boundary traces; only the six exterior contour segments generate walls. The screenshot documents the complete solid. The triangulation is defined in the text and does not constitute a set of interior walls.
5.3. Example 3: Annular Base between Two Curved Surfaces
Step 1. Formulation. Consider
On this base,
. The height is positive, both the floor and the roof are curved, and the central hole must remain empty.
Step 2. Polar parameterization. With
and
,
The lifts are
The first two lines of Listing A.3 represent these surfaces. The duplicated line at
and
is a parameter seam: it is not a physical domain edge and requires no wall.
Step 3. Construct the outer and inner walls. Traverse the outer circle counterclockwise and the inner circle clockwise. The parameterizations are
The negative sign in the second component of the inner wall establishes clockwise traversal. It does not change the represented geometric set, but makes the cross product
point into the hole, which is outward from the solid at that wall. The four circular edges lie at
,
,
, and
, depending on the associated face.
Step 4. Integral verification. The volume integral is
A second check uses the field
, whose divergence equals one. With outward orientation, the fluxes in Table 4 sum to the same volume.
Table 4. Exact fluxes through the four faces of the annular solid.
Face |
Outward flux of
|
Roof |
29π/8 |
Floor |
5π/8 |
Outer wall |
8π/3 |
Inner wall |
−5π/3 |
Total |
21π/4 |
The sign of the inner-wall contribution verifies the role of orientation in the presence of a hole. This check is more informative about walls than using only a vertical field, whose flux through every vertical wall would be zero. Nevertheless, a single integral equality does not prove closure by itself: geometric checks of matching edges and coverage are also required.
Step 5. Operational observations. The author reported completing C1 - C5 for E03 without incidents. The definitions yield four surfaces and four circular boundary curves. Figure 3 shows the hole and its contours; inner-wall orientation is established analytically, not by color. Appendix E requires preservation of both contour components and equality of periodic traces without a radial wall.
Figure 3. Case E03: solid over 1 ≤ x2 + y2 ≤ 4, between z = (x2 + y2)/4 and z = 3 − (x2 + y2)/4. The inner contour encloses a hole and requires a wall oriented toward it. The angular seam generates no radial wall. The screenshot was supplied by the tester.
5.4. Summary of Results
Table 5 summarizes the base geometries, boundary patch counts, base areas, and exact volumes of the three developed cases.
Table 5. Characteristics of the three developed cases.
Case |
Base geometry |
Roof/floor/walls |
Base area |
Exact volume |
1 |
Triangle |
1/1/3 |
1/2 |
2/3 |
2 |
Concave L-shaped polygon |
4/4/6 |
3/4 |
3/8 |
3 |
Annulus |
1/1/2 |
3π |
21π/4 |
The progression separates three difficulties: converting a triangular domain to independent ranges, distinguishing triangulation from the contour of a concave base, and handling a hole with inner-wall orientation. In the second case, the six symbolic checks of wall boundary traces yield zero residuals. The three volume integrals and the annular flux were evaluated exactly rather than estimated visually.
5.5. Results of the Extended Validation Set
Cases E01 - E03 are original examples. Cases E04 - E12 correspond to Exercises 19 - 27 in [12]. Case E13, bounded by x = y2, z = 0, and x + z = 1, is also taken from [12]. Case E14 is taken from [13]. Complete mathematical descriptions appear in Appendix C to distinguish cases with repeated exercise numbers.
Table 6 summarizes the consolidated author observations for C1 - C5 across the fourteen cases. R denotes an operation reported by the author as completed without incidents. A row with five R entries summarizes that author observation; it does not certify an invariant-level replay under the revised C3 protocol.
Table 6. Consolidated author observations for fourteen cases. R means reported completion without incidents; it is not an independently logged pass.
Case |
C1 Open |
C2 Commands |
C3 Inspection |
C4 Save |
C5 Reopen |
Incidents |
E01 |
R |
R |
R |
R |
R |
None reported |
E02 |
R |
R |
R |
R |
R |
None reported |
E03 |
R |
R |
R |
R |
R |
None reported |
E04 |
R |
R |
R |
R |
R |
None reported |
E05 |
R |
R |
R |
R |
R |
None reported |
E06 |
R |
R |
R |
R |
R |
None reported |
E07 |
R |
R |
R |
R |
R |
None reported |
E08 |
R |
R |
R |
R |
R |
None reported |
E09 |
R |
R |
R |
R |
R |
None reported |
E10 |
R |
R |
R |
R |
R |
None reported |
E11 |
R |
R |
R |
R |
R |
None reported |
E12 |
R |
R |
R |
R |
R |
None reported |
E13 |
R |
R |
R |
R |
R |
None reported |
E14 |
R |
R |
R |
R |
R |
None reported |
The tester reported successful completion of all five operations for 14 of 14 cases (100% of this reported set), without incident. One screenshot was supplied per case. No contemporaneous operation-level log was provided, and the detailed C3 invariants added in this revision have no historical individual outcomes. Table 6 and the supplementary CSV are therefore consistently presented as consolidated author observations, not seventy independent trials or independently verified operational passes. The volumes in Table 5 and Appendix C are analytical checks, not measurements from screenshots.
5.6. Critical Cases Extending the Scope
In E13, the base lies between x = y2 and x = 1, with −1 ≤ y ≤ 1. Parameterizing it by X = t2 + s(1 − t2), Y = t gives the roof height H = (1 − s)(1 − t2). This height is zero on x = 1: the boundary consists of a floor, a roof, and a single parabolic wall, and the volume is 8/15. The case demonstrates the need to distinguish a contour segment from a positive-area wall.
In E10, the base x2 ≤ y ≤ 4 includes −2 ≤ x ≤ 2. The roof z = x2 touches the floor along x = 0, so the main assumptions are applied to two subregions. Omitting negative x values would remove half of the total volume of 128/15. The two lobes touch but do not have a connected interior; their contact does not become a wall.
E11 and E12 distinguish cylinders with different axis directions and first-octant restrictions. E14 preserves two parabolic arcs exactly without triangulation. Figures A1-A3 in Appendix D group these cases and the remaining exercises. No figure replaces equation-based checks: each provides evidence of the representation obtained and supports interpretation of the boundary.
6. Discussion
6.1. Nature of the Contribution
The square-to-triangle map, barycentric coordinates, triangulation, and graph lifting are established tools. The contribution is their integration into a protocol for constructing complete boundaries, with explicit correspondence between inequalities, patches, curves, and checks. Operational validation covered fourteen configurations selected for geometric diversity. No priority over all earlier GeoGebra applications is claimed; the literature review is selective rather than systematic.
Whereas de Carvalho et al. [4] emphasize Riemann sums, the present approach focuses on the parametric boundary and on preserving height functions over nonrectangular bases. In contrast with the Maple visualization and calculation interface described by Linares-Rodríguez et al. [5], it proposes an explicit GeoGebra command sequence. These distinctions characterize the approach; they do not demonstrate educational, computational, or functional superiority.
Separating the triangulation from the contour is particularly important. Base subdivisions allow the roof and floor to be parameterized but do not justify adding interior surfaces to the solid. An analogous distinction arises in the annular case: a coordinate seam does not automatically become a wall.
6.2. Proposed Educational Interpretation
The cases can be organized as activities involving conversion between representations, in the sense discussed by Duval [2]. Before using the software, students formulate the base and predict the faces of the solid. During construction, they identify the role of each parameter. Afterward, they justify shared edges, determine normals, and check a volume or flux. The image becomes an object of interpretation and comparison, consistent with Arcavi’s perspective [3], rather than a substitute for proof.
Questions can require connections between geometry and calculus: why is there no wall over
in the second example? Why is the floor in the third example not the planar projection? What changes when the inner-contour traversal is reversed? What volume would result from interpolating vertex heights? These tasks can be used in multivariable calculus and vector analysis. Their use in introductory single-variable courses would require adaptation to students’ prior knowledge.
No student responses have been collected. The pilot classroom activity proposed in Section 4.6 should examine transfer tasks and correctness criteria: domain identification, exclusion of spurious faces, integration limits, and normal orientation. The consolidated operational observations provide a technical basis for that pilot; favorable opinions of the images would not demonstrate improved learning.
6.3. Limitations and Conditions of Use
The method requires an appropriate base description and correct height ordering. Discontinuities, self-intersecting contours, changes in that ordering, or multiple vertical intervals per point require reformulation. Interior contact between the floor and roof, as in E10, is treated by subregions before applying the main assumptions. Rank degeneracies must be recognized when defining normals and integrals, even when the geometric union remains well defined.
Triangulation does not always minimize the number of objects. The L-shaped base can also be divided into two rectangles, reducing the number of roof and floor patches. Four triangles were used to make the triangulation-contour distinction explicit and to explain a procedure extendable to other polygons. Patch count is not equated with rendering accuracy: the latter depends on the software’s graphical representation and was not quantified.
Operational findings are limited to one Windows environment and one tester from the author team. The fourteen cases are neither random nor exhaustive; their feature coverage is explicit in Table 2. No contemporaneous operation-level log, exact repetition counts, execution times, rendering errors, or invariant-level C3 results were supplied. The screenshots show one view per case, not the entire interaction. Accordingly, the reported 14/14 completion rate is an author observation about this set, not independent reproduction or certification under the newly specified C3 protocol. The original executions are reported as completed; the new protocol and unfilled replay form enable a separately documented evaluation.
6.4. Availability of Procedures, Artifacts, and Observations
The main text and Appendices A-E retain the mathematical formulations, complete command listings, calculations, figures, and case-specific checks. Appendix additionally provides the fourteen author-supplied .ggb files, named E01_v1.0.0.ggb through E14_v1.0.0.ggb. Their payloads are preserved byte for byte; the manifest records original filenames, roles, versions, sizes, and SHA-256 hashes. These files are necessary to repeat C1, whereas the printed commands support C2. The supplementary observation table documents the provenance and limits of the operational claims rather than replacing the methodological explanation.
The release label was assigned during revision, not retrospectively to the original test dates. No test-time checksum was supplied. E02 embeds saved-version metadata 5.2.899.0, whereas the execution build reported by the author is 6.0.920.0; saved-file metadata and the opening environment are different facts. The other thirteen files have no root-level saved-version attribute. These attributes were preserved rather than rewritten to resemble the test environment.
Appendix also includes an offline checksum/XML checker and a blank operation-level replay form. The checker does not run GeoGebra. Journal-hosted distribution of Appendix can preserve the released artifacts alongside the article; no repository DOI is claimed here. The figures remain associated with their construction, and higher-resolution bitmap exports can be obtained from the 3D view with ExportImage [17].
7. Conclusions
A methodology was formulated to delimit solids that are simple with respect to
through three operations: parameterizing a planar base, lifting it to the lower and upper functions, and constructing walls only along its boundary. The coverage proposition establishes why the union of these objects represents
under the stated assumptions.
The three original examples develop triangular, concave polygonal, and annular bases, with exact volumes 2/3, 3/8, and 21π/4; the last volume is also verified by an outward-flux calculation. Eleven additional exercises incorporate curvilinear bases, planes, cylinders, and height degeneracies. Every case is defined from its domain and height functions without relying on a preexisting construction.
For testing reported between September 3 and 15, 2026, the author stated that all fourteen cases completed opening, command reconstruction, geometric inspection, saving, and reopening without incidents in GeoGebra Classic 6.0.920.0 on Windows 10 Home, in English. Fourteen images and a retrospective observation table accompany that statement; no contemporaneous operation-level log was supplied. The versioned artifacts, coverage map and explicit C3 invariants make the scope assessable and provide a protocol for independently documented replay. They do not convert the historical observations into independently verified results or demonstrate educational effectiveness. A future classroom activity should evaluate learning outcomes separately.
Author Contributions
Rubi C. López-Sánchez: Methodology proposal and exercise selection. Jesús N. Zaragoza-Grifé: Test development and execution, methodology proposal, and methodological review. Caridad G. Vales-Pinzón: Contribution and review of examples. Gilberto A. Corona-Suárez: Manuscript reading and grammatical review.
Funding
This research received no financial support.
Declaration of Generative AI Assistance
Generative artificial intelligence was used to assist with English translation. Operational testing was performed by Jesús N. Zaragoza-Grifé. The figures are screenshots from the reported GeoGebra executions, not AI-generated images. Scientific verification and responsibility for the manuscript remain with the authors.
Appendix
Appendix A. Complete Listings for Reproducing the Constructions
These listings are part of the article and define the three original examples for reconstruction from commands (C2). Enter each instruction separately in an empty construction; parameter variables are local and require no sliders. Native .ggb files for C1 are supplied separately in Appendix. The explicit and native routes are compared by mathematical boundary roles, not by identical labels, list organization or auxiliary objects. Appendix C gives eleven textbook cases.
A.1. Triangular Base
A.1.1. Create the roof and floor. The planar coordinates are
,
. The roof evaluates
, and the floor lies in the plane
.
roofPatch = Surface(s, (1−s)*t, 1+s^2+((1−s)*t)^2, s, 0, 1, t, 0, 1)
floorPatch = Surface(s, (1−s)*t, 0, s, 0, 1, t, 0, 1)
A.1.2. Create the three walls. The parameter q traverses the vertical interval between the floor and roof.
wallAB = Surface(s, 0, q*(1+s^2), s, 0, 1, q, 0, 1)
wallBC = Surface(1−s, s, q*(1+(1−s)^2+s^2), s, 0, 1, q, 0, 1)
wallCA = Surface(0, 1−s, q*(1+(1−s)^2), s, 0, 1, q, 0, 1)
A.1.3. Draw the edges. Six curves and three vertical segments are generated.
upperAB = Curve(t, 0, 1+t^2, t, 0, 1)
upperBC = Curve(1−t, t, 1+(1−t)^2+t^2, t, 0, 1)
upperCA = Curve(0, 1−t, 1+(1−t)^2, t, 0, 1)
lowerAB = Curve(t, 0, 0, t, 0, 1)
lowerBC = Curve(1−t, t, 0, t, 0, 1)
lowerCA = Curve(0, 1−t, 0, t, 0, 1)
edgeA = Segment((0, 0, 0), (0, 0, 1))
edgeB = Segment((1, 0, 0), (1, 0, 2))
edgeC = Segment((0, 1, 0), (0, 1, 2))
A.1.4. Adjust the display. Keep the constructed floor visible and hide only the coordinate plane.
SetFilling(roofPatch, 0.45)
SetFilling(floorPatch, 0.45)
SetFilling(wallAB, 0.45)
SetFilling(wallBC, 0.45)
SetFilling(wallCA, 0.45)
SetVisibleInView(xOyPlane, −1, false)
To inspect the interior, execute the first instruction below, examine the joins, and then execute the second instruction to restore the roof:
SetVisibleInView(roofPatch, −1, false)
SetVisibleInView(roofPatch, −1, true)
A.2. Concave L-Shaped Polygonal Base
A.2.1. Create the four roof patches and four floor patches. The indices follow the order
,
,
,
in Table 3.
roof1 = Surface(s+(1−s)*t/2, (1−s)*t/2, (s+(1−s)*t/2)^2+((1−s)*t/2)^2, s, 0, 1, t, 0, 1)
roof2 = Surface(s/2, s/2+(1−s)*t, (s/2)^2+(s/2+(1−s)*t)^2, s, 0, 1, t, 0, 1)
roof3 = Surface(1−(1−s)*t/2, (s+(1−s)*t)/2, (1−(1−s)*t/2)^2+((s+(1−s)*t)/2)^2, s, 0, 1, t, 0, 1)
roof4 = Surface((1−(1−s)*t)/2, (1+s+(1−s)*t)/2, ((1−(1−s)*t)/2)^2+((1+s+(1−s)*t)/2)^2, s, 0, 1, t, 0, 1)
floor1 = Surface(s+(1−s)*t/2, (1−s)*t/2, 0, s, 0, 1, t, 0, 1)
floor2 = Surface(s/2, s/2+(1−s)*t, 0, s, 0, 1, t, 0, 1)
floor3 = Surface(1−(1−s)*t/2, (s+(1−s)*t)/2, 0, s, 0, 1, t, 0, 1)
floor4 = Surface((1−(1−s)*t)/2, (1+s+(1−s)*t)/2, 0, s, 0, 1, t, 0, 1)
A.2.2. Create only the six contour walls. Do not lift the interior triangulation diagonals into walls.
wallAB = Surface(s, 0, q*(s^2), s, 0, 1, q, 0, 1)
wallBC = Surface(1, s/2, q*(1+s^2/4), s, 0, 1, q, 0, 1)
wallCD = Surface(1−s/2, 1/2, q*((1−s/2)^2+1/4), s, 0, 1, q, 0, 1)
wallDE = Surface(1/2, (1+s)/2, q*(1/4+(1+s)^2/4), s, 0, 1, q, 0, 1)
wallEF = Surface((1−s)/2, 1, q*(1+(1−s)^2/4), s, 0, 1, q, 0, 1)
wallFA = Surface(0, 1−s, q*((1−s)^2), s, 0, 1, q, 0, 1)
A.2.3. Create the upper and lower edges and the vertical edges. No vertical segment is included over A because the height is zero there.
upperAB = Curve(s, 0, s^2, s, 0, 1)
upperBC = Curve(1, s/2, 1+s^2/4, s, 0, 1)
upperCD = Curve(1−s/2, 1/2, (1−s/2)^2+1/4, s, 0, 1)
upperDE = Curve(1/2, (1+s)/2, 1/4+(1+s)^2/4, s, 0, 1)
upperEF = Curve((1−s)/2, 1, 1+(1−s)^2/4, s, 0, 1)
upperFA = Curve(0, 1−s, (1−s)^2, s, 0, 1)
lowerAB = Curve(s, 0, 0, s, 0, 1)
lowerBC = Curve(1, s/2, 0, s, 0, 1)
lowerCD = Curve(1−s/2, 1/2, 0, s, 0, 1)
lowerDE = Curve(1/2, (1+s)/2, 0, s, 0, 1)
lowerEF = Curve((1−s)/2, 1, 0, s, 0, 1)
lowerFA = Curve(0, 1−s, 0, s, 0, 1)
edgeB = Segment((1, 0, 0), (1, 0, 1))
edgeC = Segment((1, 1/2, 0), (1, 1/2, 5/4))
edgeD = Segment((1/2, 1/2, 0), (1/2, 1/2, 1/2))
edgeE = Segment((1/2, 1, 0), (1/2, 1, 5/4))
edgeF = Segment((0, 1, 0), (0, 1, 1))
A.2.4. Adjust opacity and hide the coordinate plane. Each patch retains its name for individual inspection.
SetFilling(roof1, 0.45)
SetFilling(roof2, 0.45)
SetFilling(roof3, 0.45)
SetFilling(roof4, 0.45)
SetFilling(floor1, 0.45)
SetFilling(floor2, 0.45)
SetFilling(floor3, 0.45)
SetFilling(floor4, 0.45)
SetFilling(wallAB, 0.45)
SetFilling(wallBC, 0.45)
SetFilling(wallCD, 0.45)
SetFilling(wallDE, 0.45)
SetFilling(wallEF, 0.45)
SetFilling(wallFA, 0.45)
SetVisibleInView(xOyPlane, −1, false)
The roof consists of roof1, roof2, roof3, and roof4. To obtain an open view, hide all four objects in the Algebra view; hiding only one removes just one patch. Restore them after inspection.
A.3. Annular Base between Two Curved Surfaces
A.3.1. Create the roof and floor. The radius ranges from 1 to 2, and the parameter t measures the angle in radians. Do not create sliders for r or t.
roofPatch = Surface(r*cos(t), r*sin(t), 3−r^2/4, r, 1, 2, t, 0, 2*pi)
floorPatch = Surface(r*cos(t), r*sin(t), r^2/4, r, 1, 2, t, 0, 2*pi)
A.3.2. Create the outer and inner walls. The negative sign in the inner wall’s y-coordinate establishes clockwise traversal.
outerWall = Surface(2*cos(t), 2*sin(t), 1+q, t, 0, 2*pi, q, 0, 1)
innerWall = Surface(cos(t), −sin(t), 1/4+5*q/2, t, 0, 2*pi, q, 0, 1)
A.3.3. Create the four circular edges. Do not add vertical segments or radial walls.
upperOuter = Curve(2*cos(t), 2*sin(t), 2, t, 0, 2*pi)
lowerOuter = Curve(2*cos(t), 2*sin(t), 1, t, 0, 2*pi)
upperInner = Curve(cos(t), −sin(t), 11/4, t, 0, 2*pi)
lowerInner = Curve(cos(t), −sin(t), 1/4, t, 0, 2*pi)
A.3.4. Adjust the display. The visible floor is curved and does not coincide with the coordinate plane.
SetFilling(roofPatch, 0.45)
SetFilling(floorPatch, 0.45)
SetFilling(outerWall, 0.45)
SetFilling(innerWall, 0.45)
SetVisibleInView(xOyPlane, −1, false)
Temporarily hiding roofPatch allows inspection of the inner wall and floor. Restore the roof for a complete view of the solid.
Appendix B. Reproducible Mathematical Checks
This appendix develops calculations supporting the reference values. It does not replace execution testing of the listings. Every quantity is exact and follows from the published parameterizations, not from measurements on a figure.
B.1. Volume and Interpolation over the Triangular Base
Integrating first with respect to
gives
The integral of the affine function interpolating heights 1, 2, and 2 is the triangle’s area multiplied by the mean of the three vertex heights:
. The relative excess is
. This comparison distinguishes two mathematical models; it does not measure a rendering error.
B.2. Coverage, Edges, and Volumes of the L-Shaped Base
Diagonal
divides the square
into two halves contained in
and
, respectively. Outside that square, the remaining portions of
and
partition the horizontal arm, while those of
and
partition the vertical arm. Their interiors do not overlap: the separating edges are precisely
,
, and
. This establishes coverage in addition to the area equality in Table 3.
Agreement of the maps in Table 3 along the three interior edges can be checked using the following identities for
:
Evaluating the same function
on both sides of each identity also gives matching roof traces; the same holds for the floor with zero height. No walls are required at these joins. On every exterior segment, Equation (5) also satisfies
and
, with identically zero differences in all three coordinates.
The triangle volumes can be verified by integrating the expressions in Table 3 or by using the barycentric moments
and
for
, obtained by substituting Equations (3) and (4). For planar vertices
, these give
Substitution for the four triangles gives 1/12, 1/12, 5/48, and 5/48, summing to 3/8. In contrast, affine interpolation of the heights gives
. The sum is
, and the relative excess is 5/18. The Cartesian decomposition in Section 5.2 provides an independent check of the correct volume.
B.3. Volume and Flux of the Annular Region
The radial volume integral evaluates to
For
, the outward-oriented roof and floor parameterizations give the flux integrands
Consequently,
For the outer wall,
and
. For the inner wall, the normal cross product is
, and the integrand is −5/6. Thus,
The four contributions sum to
. Orienting the inner wall toward the hole explains its negative sign and agrees with the divergence theorem [1] (Section 6.8).
Appendix C. Eleven Additional Exercises: Formulations and Complete Commands
This appendix is part of the paper. The case identifiers correspond to those in Table 6 and Figures A1-A3. In every case, the floor is z = 0 and the roof has height H. The coordinates X and Y parameterize the base; the commands already contain the substituted expressions and require no auxiliary functions. Enter each block in an empty construction, one instruction at a time. Command names are in English. The inequalities specify each problem unambiguously, independently of its exercise number.
Volumes are derived analytically and are not attributed to graphical measurements. Camera position, color, opacity, and dashed-line settings control presentation and are not part of the geometric definition. The supplied screenshots may use different settings without changing the equations.
C.1. E04: Plane over a Base between y = x4 and y = x
Source: [12], Exercise 19.
Base parameterization and height:
The walls follow y = x4 and y = x. The height vanishes at the origin; a vertical edge of length 3 lies above (1, 1).
Integral check:
Complete geometric commands:
floorPatch = Surface(t, t^4+s*(t−t^4), 0, s, 0, 1, t, 0, 1)
roofPatch = Surface(t, t^4+s*(t−t^4), t+2*(t^4+s*(t−t^4)), s, 0, 1, t, 0, 1)
wallQuartic = Surface(t, t^4, q*(t+2*t^4), t, 0, 1, q, 0, 1)
wallLine = Surface(t, t, 3*q*t, t, 0, 1, q, 0, 1)
lowerQuartic = Curve(t, t^4, 0, t, 0, 1)
upperQuartic = Curve(t, t^4, t+2*t^4, t, 0, 1)
lowerLine = Curve(t, t, 0, t, 0, 1)
upperLine = Curve(t, t, 3*t, t, 0, 1)
edgeAtOne = Curve(1, 1, 3*q, q, 0, 1)
C.2. E05: Base between x = y³ and x = y2
Source: [12], Exercise 20.
Base parameterization and height:
Both curved walls are included, along with the single nondegenerate vertical edge above (1, 1).
Integral check:
Complete geometric commands:
floorPatch = Surface(t^3+s*(t^2−t^3), t, 0, s, 0, 1, t, 0, 1)
roofPatch = Surface(t^3+s*(t^2−t^3), t, 2*(t^3+s*(t^2−t^3))+t^2, s, 0, 1, t, 0, 1)
wallCubic = Surface(t^3, t, q*(2*t^3+t^2), t, 0, 1, q, 0, 1)
wallQuadratic = Surface(t^2, t, 3*q*t^2, t, 0, 1, q, 0, 1)
lowerCubic = Curve(t^3, t, 0, t, 0, 1)
upperCubic = Curve(t^3, t, 2*t^3+t^2, t, 0, 1)
lowerQuadratic = Curve(t^2, t, 0, t, 0, 1)
upperQuadratic = Curve(t^2, t, 3*t^2, t, 0, 1)
edgeAtOne = Curve(1, 1, 3*q, q, 0, 1)
C.3. E06: Roof z = xy over a Triangular Base
Source: [12], Exercise 21.
Base parameterization and height:
The planar vertices are (1, 1), (4, 1), and (1, 2). The product XY is evaluated; the roof is not replaced by the plane interpolating the three vertex heights.
Integral check:
Complete geometric commands:
floorPatch = Surface(1+3*s, 1+(1−s)*t, 0, s, 0, 1, t, 0, 1)
roofPatch = Surface(1+3*s, 1+(1−s)*t, (1+3*s)*(1+(1−s)*t), s, 0, 1, t, 0, 1)
wallAB = Surface(1+3*t, 1, q*(1+3*t), t, 0, 1, q, 0, 1)
wallBC = Surface(4−3*t, 1+t, q*(4−3*t)*(1+t), t, 0, 1, q, 0, 1)
wallCA = Surface(1, 2−t, q*(2−t), t, 0, 1, q, 0, 1)
lowerAB = Curve(1+3*t, 1, 0, t, 0, 1)
upperAB = Curve(1+3*t, 1, 1+3*t, t, 0, 1)
lowerBC = Curve(4−3*t, 1+t, 0, t, 0, 1)
upperBC = Curve(4−3*t, 1+t, (4−3*t)*(1+t), t, 0, 1)
lowerCA = Curve(1, 2−t, 0, t, 0, 1)
upperCA = Curve(1, 2−t, 2−t, t, 0, 1)
edgeA = Curve(1, 1, q, q, 0, 1)
edgeB = Curve(4, 1, 4*q, q, 0, 1)
edgeC = Curve(1, 2, 2*q, q, 0, 1)
C.4. E07: Paraboloid over a Triangular Base
Source: [12], Exercise 22.
Base parameterization and height:
The three walls correspond to x = 0, y = 1, and y = x. The height vanishes only at the origin.
Integral check:
Complete geometric commands:
floorPatch = Surface(s*t, t, 0, s, 0, 1, t, 0, 1)
roofPatch = Surface(s*t, t, t^2*(s^2+3), s, 0, 1, t, 0, 1)
wallXZero = Surface(0, t, 3*q*t^2, t, 0, 1, q, 0, 1)
wallYOne = Surface(t, 1, q*(t^2+3), t, 0, 1, q, 0, 1)
wallDiagonal = Surface(t, t, 4*q*t^2, t, 0, 1, q, 0, 1)
lowerXZero = Curve(0, t, 0, t, 0, 1)
upperXZero = Curve(0, t, 3*t^2, t, 0, 1)
lowerYOne = Curve(t, 1, 0, t, 0, 1)
upperYOne = Curve(t, 1, t^2+3, t, 0, 1)
lowerDiagonal = Curve(t, t, 0, t, 0, 1)
upperDiagonal = Curve(t, t, 4*t^2, t, 0, 1)
edgeAtZeroOne = Curve(0, 1, 3*q, q, 0, 1)
edgeAtOneOne = Curve(1, 1, 4*q, q, 0, 1)
C.5. E08: Tetrahedron Bounded by the Coordinate Planes
Source: [12], Exercise 23.
Base parameterization and height:
The roof and floor meet along 3x + 2y = 6, where there is no vertical wall of positive area.
Integral check:
Complete geometric commands:
floorPatch = Surface(2*s, 3*(1−s)*t, 0, s, 0, 1, t, 0, 1)
roofPatch = Surface(2*s, 3*(1−s)*t, 6*(1−s)*(1−t), s, 0, 1, t, 0, 1)
wallXZero = Surface(0, 3*t, 6*q*(1−t), t, 0, 1, q, 0, 1)
wallYZero = Surface(2*t, 0, 6*q*(1−t), t, 0, 1, q, 0, 1)
lowerXAxis = Curve(2*t, 0, 0, t, 0, 1)
lowerYAxis = Curve(0, 3*t, 0, t, 0, 1)
sharedOblique = Curve(2*(1−t), 3*t, 0, t, 0, 1)
upperXZ = Curve(2*t, 0, 6*(1−t), t, 0, 1)
upperYZ = Curve(0, 3*t, 6*(1−t), t, 0, 1)
edgeZAxis = Curve(0, 0, 6*q, q, 0, 1)
C.6. E09: Solid Bounded by Four Planes
Source: [12], Exercise 24.
Base parameterization and height:
The walls lie over y = x and y = 2 − x. At x = 0, the floor and roof share a segment.
Integral check:
Complete geometric commands:
floorPatch = Surface(s, s+2*(1−s)*t, 0, s, 0, 1, t, 0, 1)
roofPatch = Surface(s, s+2*(1−s)*t, s, s, 0, 1, t, 0, 1)
wallDiagonal = Surface(t, t, q*t, t, 0, 1, q, 0, 1)
wallSumTwo = Surface(t, 2−t, q*t, t, 0, 1, q, 0, 1)
lowerDiagonal = Curve(t, t, 0, t, 0, 1)
lowerSumTwo = Curve(t, 2−t, 0, t, 0, 1)
sharedXZero = Curve(0, 2*t, 0, t, 0, 1)
upperDiagonal = Curve(t, t, t, t, 0, 1)
upperSumTwo = Curve(t, 2−t, t, t, 0, 1)
edgeAtOneOne = Curve(1, 1, q, q, 0, 1)
C.7. E10: Two Lobes with Zero-Height Contact
Source: [12], Exercise 25.
Base parameterization and height:
Use 0 ≤ s ≤ 1 and 0 ≤ t ≤ 2 on each half. The interior has two components whose closures meet at x = z = 0, 0 ≤ y ≤ 4. This segment is drawn once and generates no wall.
Integral check:
Complete geometric commands:
floorNegative = Surface(−t, t^2+s*(4−t^2), 0, s, 0, 1, t, 0, 2)
roofNegative = Surface(−t, t^2+s*(4−t^2), t^2, s, 0, 1, t, 0, 2)
wallParabolaNegative = Surface(−t, t^2, q*t^2, t, 0, 2, q, 0, 1)
wallCapNegative = Surface(−t, 4, q*t^2, t, 0, 2, q, 0, 1)
lowerParabolaNegative = Curve(−t, t^2, 0, t, 0, 2)
upperParabolaNegative = Curve(−t, t^2, t^2, t, 0, 2)
lowerCapNegative = Curve(−t, 4, 0, t, 0, 2)
upperCapNegative = Curve(−t, 4, t^2, t, 0, 2)
floorPositive = Surface(t, t^2+s*(4−t^2), 0, s, 0, 1, t, 0, 2)
roofPositive = Surface(t, t^2+s*(4−t^2), t^2, s, 0, 1, t, 0, 2)
wallParabolaPositive = Surface(t, t^2, q*t^2, t, 0, 2, q, 0, 1)
wallCapPositive = Surface(t, 4, q*t^2, t, 0, 2, q, 0, 1)
lowerParabolaPositive = Curve(t, t^2, 0, t, 0, 2)
upperParabolaPositive = Curve(t, t^2, t^2, t, 0, 2)
lowerCapPositive = Curve(t, 4, 0, t, 0, 2)
upperCapPositive = Curve(t, 4, t^2, t, 0, 2)
edgeNegative = Curve(−2, 4, 4*q, q, 0, 1)
edgePositive = Curve(2, 4, 4*q, q, 0, 1)
contactLine = Curve(0, 4*t, 0, t, 0, 1)
C.8. E11: Horizontal Cylinder in the First Octant
Source: [12], Exercise 26.
Base parameterization and height:
The angular substitution represents the upper branch of y2 + z2 = 4. A wall at y = 2 is omitted because the height is zero there.
Integral check:
Complete geometric commands:
floorPatch = Surface(4*s*sin(t), 2*sin(t), 0, s, 0, 1, t, 0, π/2)
roofPatch = Surface(4*s*sin(t), 2*sin(t), 2*cos(t), s, 0, 1, t, 0, π/2)
wallXZero = Surface(0, 2*sin(t), 2*q*cos(t), t, 0, π/2, q, 0, 1)
wallXTwiceY = Surface(4*sin(t), 2*sin(t), 2*q*cos(t), t, 0, π/2, q, 0, 1)
lowerXZero = Curve(0, 2*t, 0, t, 0, 1)
lowerXTwiceY = Curve(4*t, 2*t, 0, t, 0, 1)
sharedYTwo = Curve(4*t, 2, 0, t, 0, 1)
upperXZero = Curve(0, 2*sin(t), 2*cos(t), t, 0, π/2)
upperXTwiceY = Curve(4*sin(t), 2*sin(t), 2*cos(t), t, 0, π/2)
edgeZAxis = Curve(0, 0, 2*q, q, 0, 1)
C.9. E12: Vertical Cylinder in the First Octant
Source: [12], Exercise 27.
Base parameterization and height:
The floor is a quarter of the unit disk. The roof is part of the plane z = y; at y = 0, it shares an edge with the floor.
Integral check:
Complete geometric commands:
floorPatch = Surface(s*cos(t), s*sin(t), 0, s, 0, 1, t, 0, π/2)
roofPatch = Surface(s*cos(t), s*sin(t), s*sin(t), s, 0, 1, t, 0, π/2)
wallCylinder = Surface(cos(t), sin(t), q*sin(t), t, 0, π/2, q, 0, 1)
wallXZero = Surface(0, t, q*t, t, 0, 1, q, 0, 1)
lowerArc = Curve(cos(t), sin(t), 0, t, 0, π/2)
upperArc = Curve(cos(t), sin(t), sin(t), t, 0, π/2)
lowerXZero = Curve(0, t, 0, t, 0, 1)
upperXZero = Curve(0, t, t, t, 0, 1)
sharedYAxisZero = Curve(t, 0, 0, t, 0, 1)
edgeAtZeroOne = Curve(0, 1, q, q, 0, 1)
C.10. E13: Parabolic Cylinder and Inclined Plane
Source: [12]. The defining surfaces are x = y2, z = 0, and x + z = 1.
Base parameterization and height:
Both signs of y are retained. The boundary consists of a floor, a roof, and one parabolic wall. At x = 1, the floor and roof share an edge along z = 0.
Integral check:
Complete geometric commands:
floorPatch = Surface(t^2+s*(1−t^2), t, 0, s, 0, 1, t, −1, 1)
roofPatch = Surface(t^2+s*(1−t^2), t, (1−s)*(1−t^2), s, 0, 1, t, −1, 1)
wallParabolic = Surface(t^2, t, q*(1−t^2), t, −1, 1, q, 0, 1)
lowerParabola = Curve(t^2, t, 0, t, −1, 1)
upperParabola = Curve(t^2, t, 1−t^2, t, −1, 1)
sharedEdge = Curve(1, t, 0, t, −1, 1)
C.11. E14: Two Parabolic Cylinders and Constant Heights
Source: [13], Section 14.7, p. 782, Exercise 21.
Intersecting the two parabolic cylinders gives y2 = 4 − y2, hence y =
and x = 2. Therefore, the admissible y-interval is from the negative square root of two to the positive square root of two. The same interval is used for the base parameter t and for the outer integral below; it is not [−2, 2].
Base parameterization and height:
Range check. The transverse width is 4 − 2t2, which is nonnegative exactly when
and vanishes only at the two endpoints. Since Y = t, the domain bounds, parameter bounds, and integration limits agree. The supplied E14 file already uses −sqrt(2) and sqrt(2) in its commands and is distributed unchanged.
The floor and roof are planar and remain three units apart. At t =
, each base segment collapses to (2,
), but the corresponding wall join remains the vertical segment (2,
, z), 0 ≤ z ≤ 3. These are not zero-height contacts and do not generate additional endpoint walls.
Integral check:
Complete geometric commands:
floorPatch = Surface(t^2+s*(4−2*t^2), t, 0, s, 0, 1, t, −sqrt(2), sqrt(2))
roofPatch = Surface(t^2+s*(4−2*t^2), t, 3, s, 0, 1, t, −sqrt(2), sqrt(2))
wallLeft = Surface(t^2, t, 3*q, t, −sqrt(2), sqrt(2), q, 0, 1)
wallRight = Surface(4−t^2, t, 3*q, t, −sqrt(2), sqrt(2), q, 0, 1)
lowerLeft = Curve(t^2, t, 0, t, −sqrt(2), sqrt(2))
lowerRight = Curve(4−t^2, t, 0, t, −sqrt(2), sqrt(2))
upperLeft = Curve(t^2, t, 3, t, −sqrt(2), sqrt(2))
upperRight = Curve(4−t^2, t, 3, t, −sqrt(2), sqrt(2))
edgeNegative = Curve(2, −sqrt(2), 3*q, q, 0, 1)
edgePositive = Curve(2, sqrt(2), 3*q, q, 0, 1)
Appendix D. Graphical Evidence for the Extended Set
The eleven images below complement the three figures in the main text. They are original screenshots supplied by Jesús Nicolás Zaragoza Grifé for the cases reported as tested. Colors, orientation, and content are preserved; size is adjusted only for layout. Dashed lines, opacity, and perspective aid interpretation, but do not determine mathematical orientation or add surfaces. Each figure documents the resulting representation and must be read alongside the equations. No details absent from the original files have been reconstructed.
D.1. Zero Heights, a Circular Base, and Parabolic Cylinders
Figure A1. (a) Floor and roof coincide along x = 1: their join is a segment, not a wall. (b) Two parabolic walls connect constant heights; their endpoint joins are vertical edges. (c) The first octant restricts the vertical cylinder to a quarter disk with roof z = y. The images are projections from the supplied executions; exact volumes are calculated in C.10, C.11, and C.9, respectively.
D.2. Curvilinear and Triangular Bases
Figure A2. Cases E04 - E07. (a) Plane over a base between y = x4 and y = x. (b) Surface z = 2x + y2 over a base between x = y³ and x = y2. (c) Roof z = xy over the triangle with vertices (1, 1), (4, 1), and (1, 2). (d) Paraboloid z = x2 + 3y2 over 0 ≤ x ≤ y ≤ 1. Faces are obtained by evaluating the functions over the base, not by interpolating vertex heights. Some faces overlap in projection; complete definitions are given in C.1 - C.4.
D.3. Planes, Interior Contact, and a Horizontal Cylinder
Figure A3. Cases E08 - E11. (a) Tetrahedron with intercepts 2, 3, and 6. (b) Solid bounded by z = x, z = 0, y = x, and x + y = 2. (c) Two lobes under z = x2 touching along x = z = 0; both signs of x belong to the problem. (d) Portion of y2 + z2 = 4 in the first octant between x = 0 and x = 2y. Zero height on certain segments explains the absence of additional walls. Formulas and checks are given in C.5 - C.8.
Appendix E. Case-Specific C3
Apply all four invariant groups in Section 4.5 to every case. The domains, heights and parameter intervals are defined in Sections 5.1 - 5.3 and Appendix C; the requirements in Table A1 specify the necessary boundary roles, matching traces, excluded walls, and treatment of seams or contacts. Counts refer to positive-area geometric patches, not necessarily to top-level GeoGebra objects. A violated requirement is FAIL; an unchecked requirement is NOT_ASSESSED. These are normative replay conditions, not a record of individually observed historical results.
Table A1. Boundary inventory and case-specific conditions for C3. Read each row together with C3.1 - C3.4.
Case |
Required boundary and pass/fail invariants |
E01 |
Floor/roof/wall patches: 1/1/3. C3.1—Cover the triangle with floor z = 0 and roof z = 1 + x2 + y2. Include exactly the positive-area wall patches over y = 0, x + y = 1 and x = 0. C3.2—Each wall bottom equals its floor trace and each wall top equals the roof trace. The vertical joins over (0, 0), (1, 0), (0, 1) have lengths 1, 2, 2. C3.3—No additional wall is generated from the collapsed square edge s = 1; no interpolating plane replaces the roof. C3.4—The parameter edge s = 1 maps to (1, 0). The two lifted edges are points and the adjacent walls meet along the existing vertical edge there. There is no zero-height contact. |
E02 |
Floor/roof/wall patches: 4/4/6. C3.1—Cover the L-shaped base by ABD, ADF, BCD, DEF with disjoint interiors; preserve the missing upper-right part of the unit square. Include four floor patches, four roof patches and six contour walls. C3.2—Floor and roof traces agree on AD, BD and DF. Wall traces match the floor and roof on AB, BC, CD, DE, EF and FA; vertical joints over B, C, D, E and F have heights 1, 5/4, 1/2, 5/4 and 1. C3.3—No wall over interior diagonals AD, BD or DF; auxiliary lists, duplicate curve displays, points and sliders are not additional boundary faces. C3.4—At A = (0, 0), roof and floor meet at one point: no positive-length vertical edge. The reentrant corner D remains part of the contour. |
E03 |
Floor/roof/wall patches: 1/1/2. C3.1—Cover the full annulus, not a disk. Retain both circular boundary components and their inner and outer walls; floor r2/4 and roof 3 − r2/4. C3.2—At r = 1, the wall endpoints are z = 1/4 and 11/4; at r = 2, they are z = 1 and 2. Match all four circular traces. C3.3—No wall on t = 0 or t = 2*π and no cap across the hole. The inner-wall outward normal points toward the axis when flux is checked. C3.4—For every r in [1, 2], traces at t = 0 and 2*π are identical. Heights are strictly separated; the angular seam is not a physical radial face. |
E04 |
Floor/roof/wall patches: 1/1/2. C3.1—Cover the region between y = x4 and y = x on [0, 1]. Include floor, plane roof, and walls only over those two arcs. C3.2—For each arc, lower z = 0 and upper z = x + 2*y agree with the corresponding wall endpoints; the two walls share (1, 1, z), 0 ≤ z ≤ 3. C3.3—No additional face at x = 0 or x = 1: the transverse intervals collapse there. C3.4—At t = 0 the base width and height both vanish, giving only
the origin. At t = 1 the width vanishes but height is 3, giving a vertical edge. |
E05 |
Floor/roof/wall patches: 1/1/2. C3.1—Cover y³ ≤ x ≤ y2 for 0 ≤ y ≤ 1. Include floor, curved roof, and one wall on each defining arc. C3.2—The wall top traces are z = 2*t³ + t2 and z = 3*t2; both have z = 0 at t = 0 and z = 3 at t = 1. C3.3—No walls on the collapsed endpoint sets y = 0 or y = 1; do not reverse the lower and upper x-bounds. C3.4—The origin is a zero-height point. At (1, 1), retain the single shared vertical edge 0 ≤ z ≤ 3. |
E06 |
Floor/roof/wall patches: 1/1/3. C3.1—Cover the triangle (1, 1), (4, 1), (1, 2) with graphs z = 0 and z = x*y and walls on y = 1, x = 1 and x + 3*y = 7. C3.2—Match six graph traces and three vertical joins; vertex heights are 1, 4 and 2. At (2, 3/2), the roof height is exactly 3, not 5/2. C3.3—No extra wall at the collapsed square edge; no planar interpolant through vertex heights. C3.4—Heights are positive throughout the closed base; the parameter collapse yields the existing vertical edge over (4, 1), not a new face. |
E07 |
Floor/roof/wall patches: 1/1/3. C3.1—Cover 0 ≤ x ≤ y ≤ 1. Keep all three walls on x = 0, y = 1 and y = x; each has positive area despite contact at the origin. C3.2—Wall tops are 3*t2 on x = 0, t2 + 3 on y = 1, and 4*t2 on y = x; match their graph traces. Nonzero vertical joints have lengths 3 and 4. C3.3—Do not delete the walls adjacent to the origin merely because their heights vanish at that endpoint; no fourth wall at the collapsed parameter edge. C3.4—Only (0, 0, 0) is a zero-height contact. The parameter set t = 0 collapses to that point; no vertical edge remains there. |
E08 |
Floor/roof/wall patches: 1/1/2. C3.1—Cover the triangular base with intercepts (2, 0), (0, 3). Include floor, roof and walls only on x = 0 and y = 0. C3.2—All six tetrahedral edges join exactly; the vertical edge over the origin has height 6. On 3*x + 2*y = 6, both graphs have z = 0. C3.3—No wall over 3*x + 2*y = 6; it contributes the shared floor-roof edge, not a face. C3.4—The whole oblique base edge is a zero-height contact; its endpoints are point contacts. No positive-length vertical joints occur there. |
E09 |
Floor/roof/wall patches: 1/1/2. C3.1—Use 0 ≤ x ≤ 1 and x ≤ y ≤ 2 − x. Include the two graphs and walls only on y = x and x + y = 2. C3.2—Wall traces match z = 0 and z = x; they share the vertical segment (1, 1, z), 0 ≤ z ≤ 1. On x = 0, both graphs equal (0, y, 0),
0 ≤ y ≤ 2. C3.3—No wall in x = 0; nonnegativity of the roof determines this boundary, but its height is zero. C3.4—The x = 0 segment is a zero-height contact; the collapse at x = 1 retains the vertical edge of height 1. |
E10 |
Floor/roof/wall patches: 2/2/4. C3.1—Cover both x ≤ 0 and x ≥ 0 halves. Each has floor, roof, a wall on y = x2, and a wall on y = 4: eight geometric patches in total. C3.2—The two subregions meet only on (0, y, 0), 0 ≤ y ≤ 4. Match all contour traces and the vertical joins (±2, 4, z), 0 ≤ z ≤ 4. C3.3—No positive-area partition wall at x = 0 and no first-octant restriction. Neither lobe may be omitted. C3.4—The interior contact line has zero height. Apply the strict-interior-height assumption separately to each half; each has volume 64/15. |
E11 |
Floor/roof/wall patches: 1/1/2. C3.1—Use the first-octant branch y2 + z2 = 4 with floor z = 0 and walls on x = 0 and x = 2*y. Cover the full triangular projection. C3.2—Match quarter-circle and oblique roof traces to their wall tops. At y = 2, floor and roof share (x, 2, 0), 0 ≤ x ≤ 4; at y = 0 the walls share (0, 0, z), 0 ≤ z ≤ 2. C3.3—No wall on y = 2 and no negative-y or negative-z branch. Do not orient the cylinder axis along z. C3.4—t = π/2 gives a zero-height segment; t = 0 collapses the base to the origin but retains a vertical edge of height 2. Both angular endpoints are physical, not a periodic seam. |
E12 |
Floor/roof/wall patches: 1/1/2. C3.1—Cover only the first-quadrant quarter disk. Include the floor, plane roof, wall on x = 0 and wall on x2 + y2 = 1. C3.2—Match the two circular graph traces and the traces on x = 0; retain (0, 1, z), 0 ≤ z ≤ 1. Floor and roof share (x, 0, 0), 0 ≤ x ≤ 1. C3.3—No wall on y = 0 and no full-cylinder extension. The x = 0 angular boundary is a real wall, unlike the seam of E03. C3.4—s = 0 collapses to the zero-height origin. t = 0 is a zero-height radial edge; t = π/2 is a positive-area wall. |
E13 |
Floor/roof/wall patches: 1/1/1. C3.1—Cover y2 ≤ x ≤ 1 for −1 ≤ y ≤ 1, including both signs of y. Include only floor, roof and the wall on x = y2. C3.2—The parabolic wall matches (t2, t, 0) and (t2, t, 1 − t2). Floor and roof meet on (1, t, 0), −1 ≤ t ≤ 1. C3.3—No wall on x = 1 and no walls at y = ±1. Do not restrict the case to the first octant. C3.4—The whole x = 1 edge has zero height; the endpoint base collapses at t = ±1 are points, not vertical edges. |
E14 |
Floor/roof/wall patches: 1/1/2. C3.1—Use exactly
,
and
. Include both plane graphs and both parabolic walls. C3.2—Match all four parabolic graph traces. The walls meet at (2,
, z),
, giving two distinct vertical edges. C3.3—No extra wall at either endpoint and no interval [−2, 2] for t or the iterated integral. No first-octant restriction. C3.4—The base width 4 − 2*t2 vanishes at
, but the height remains 3. These are vertical joins, not zero-height contacts. |
For a new replay, record the four C3 outcomes and their evidence separately before assigning the overall C3 outcome. The supplementary prospective log is intentionally unfilled. For E02, use the native-object map in Appendix: a - d are roofs, Piso contains floor patches, and Paredes contains contour walls. Optional explicit edge objects in A.2 and helper displays in the native file do not change the underlying boundary. The preservation checks performed when packaging Appendix establish file identity and XML integrity only, not interactive execution or the provenance of earlier tests.