Inhalt
Aktueller Ordner:
/bundle2tutorialeng.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Modal Tutorial Bundle 2 β The Trinity in Different Approaches (Modules 9β11)</title>
<base href="https://pompeii-project.org">
<style>
/* ========== GLOBAL ========== */
* { margin: 0; padding: 0; box-sizing: border-box; }
body {
font-family: 'Georgia', 'Times New Roman', Times, serif;
background-color: #f5f3ef;
color: #2c2c2c;
line-height: 1.7;
padding: 2rem 1rem;
}
.container {
max-width: 820px;
margin: 0 auto;
background-color: #fffef7;
padding: 2rem 2.2rem;
border-radius: 16px;
box-shadow: 0 8px 30px rgba(0,0,0,0.08);
border: 1px solid #e0d6c8;
}
h1 {
font-size: 1.8rem;
font-weight: normal;
color: #2c2c2c;
border-left: 6px solid #6b4f8a;
padding-left: 1rem;
margin-bottom: 0.3rem;
}
.subhead {
font-size: 0.95rem;
color: #6b6b6b;
margin-bottom: 1.8rem;
border-bottom: 1px solid #e0d6c8;
padding-bottom: 0.8rem;
}
.subhead a {
color: #6b4f8a;
text-decoration: none;
}
.subhead a:hover { text-decoration: underline; }
.version-badge {
display: inline-block;
background-color: #2a6b4f;
color: #fffef7;
font-size: 0.65rem;
padding: 0.15rem 0.6rem;
border-radius: 20px;
vertical-align: middle;
margin-left: 0.5rem;
}
.part-tag {
display: inline-block;
font-size: 0.7rem;
padding: 0.1rem 0.6rem;
border-radius: 20px;
color: white;
margin-right: 0.5rem;
}
.part-tag.pA { background-color: #8a3a3a; }
.part-tag.pB { background-color: #3a5a8a; }
.part-tag.pC { background-color: #6b4f8a; }
/* ========== STEP BLOCK ========== */
.step-block {
background-color: #faf8f3;
border-left: 4px solid #8a3a3a;
padding: 1.5rem 1.8rem;
margin-bottom: 2rem;
border-radius: 0 10px 10px 0;
}
.step-block.partA { border-left-color: #8a3a3a; }
.step-block.partB { border-left-color: #3a5a8a; }
.step-block.partC { border-left-color: #6b4f8a; }
.step-number {
font-size: 0.75rem;
text-transform: uppercase;
letter-spacing: 1px;
color: #8a3a3a;
font-weight: bold;
}
.step-number.partB { color: #3a5a8a; }
.step-number.partC { color: #6b4f8a; }
.step-title {
font-size: 1.3rem;
font-weight: bold;
margin: 0.2rem 0 0.8rem 0;
color: #2c2c2c;
}
.step-explanation { margin-bottom: 1.2rem; }
.step-explanation p { margin-bottom: 0.8rem; }
.step-explanation ul, .step-explanation ol {
margin: 0.5rem 0 0.8rem 1.5rem;
}
.step-explanation li { margin-bottom: 0.3rem; }
/* Formula box */
.formula-box {
background-color: #f0ede6;
padding: 0.8rem 1.2rem;
border-radius: 8px;
margin: 0.8rem 0;
font-family: 'Courier New', monospace;
font-size: 1.05rem;
text-align: center;
border: 1px solid #d4cab8;
overflow-x: auto;
}
.formula-box.important {
background-color: #d4edda;
border-color: #6b4f8a;
}
.formula-box.partA {
background-color: #f8d7da;
border-color: #8a3a3a;
}
.formula-box.partB {
background-color: #d4e4f7;
border-color: #3a5a8a;
}
.formula-box.partC {
background-color: #e8e0f0;
border-color: #6b4f8a;
}
/* ========== QUESTION ========== */
.question-box {
background-color: #f5f0ea;
padding: 1.2rem 1.5rem;
border-radius: 10px;
margin-top: 1rem;
border: 1px solid #d4cab8;
}
.question-box .qoptions {
display: flex;
flex-wrap: wrap;
gap: 0.4rem 1rem;
margin-bottom: 0.8rem;
}
.question-box .qoptions label {
display: inline-block;
background-color: #fffef7;
padding: 0.15rem 0.8rem;
border-radius: 30px;
border: 1px solid #d4cab8;
font-size: 0.85rem;
cursor: pointer;
transition: background-color 0.2s;
}
.question-box .qoptions label:hover { background-color: #e8e2d7; }
.question-box .qoptions input[type="radio"] {
margin-right: 0.3rem;
accent-color: #6b4f8a;
}
.question-box .qsubmit {
background-color: #6b4f8a;
color: #fffef7;
border: none;
padding: 0.4rem 1.6rem;
border-radius: 30px;
font-size: 0.85rem;
font-family: inherit;
cursor: pointer;
transition: background-color 0.2s;
}
.question-box .qsubmit:hover { background-color: #4d3a63; }
.question-box .qsubmit:disabled {
background-color: #b0a89a;
cursor: not-allowed;
}
.question-box .qfeedback {
margin-top: 0.8rem;
padding: 0.6rem 1rem;
border-radius: 8px;
font-weight: bold;
display: none;
}
.question-box .qfeedback.correct {
display: block;
background-color: #d4edda;
color: #155724;
border: 1px solid #c3e6cb;
}
.question-box .qfeedback.wrong {
display: block;
background-color: #f8d7da;
color: #721c24;
border: 1px solid #f5c6cb;
}
/* ========== PROGRESS ========== */
.progress-bar {
background-color: #e0d6c8;
border-radius: 20px;
height: 8px;
margin: 1.8rem 0 1rem 0;
overflow: hidden;
}
.progress-bar .fill {
height: 100%;
width: 0%;
background-color: #6b4f8a;
border-radius: 20px;
transition: width 0.4s ease;
}
.progress-text {
text-align: right;
font-size: 0.8rem;
color: #8b8b8b;
margin-top: -0.3rem;
}
/* ========== NAVI ========== */
.nav-links {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
margin-top: 2rem;
padding-top: 1rem;
border-top: 1px solid #e0d6c8;
}
.nav-links a {
color: #6b4f8a;
text-decoration: none;
font-size: 0.9rem;
padding: 0.3rem 0.8rem;
border-radius: 30px;
background-color: #f0ede6;
transition: background-color 0.2s;
}
.nav-links a:hover:not(.disabled) { background-color: #d4cab8; }
.nav-links .disabled {
color: #b0a89a;
pointer-events: none;
background-color: #f5f3ef;
}
/* ========== RESPONSIVE ========== */
@media (max-width: 640px) {
.container { padding: 1.2rem; }
h1 { font-size: 1.4rem; }
.step-block { padding: 1rem 1.2rem; }
.question-box { padding: 1rem; }
.question-box .qoptions { flex-direction: column; gap: 0.2rem; }
.formula-box { font-size: 0.9rem; padding: 0.6rem 0.8rem; }
.nav-links { flex-direction: column; gap: 0.6rem; align-items: stretch; text-align: center; }
}
/* ========== HELPER ========== */
.symbol {
font-family: 'Courier New', monospace;
background-color: #f0ede6;
padding: 0.05rem 0.4rem;
border-radius: 4px;
font-size: 0.95rem;
}
.boxed {
border: 1px solid #c4a86b;
padding: 0.3rem 0.8rem;
border-radius: 6px;
display: inline-block;
background-color: #faf8f3;
font-weight: bold;
}
</style>
</head>
<body>
<div class="container" id="app">
<!-- ===== HEADER ===== -->
<h1>π The Trinity in Different Approaches <span class="version-badge">Bundle 2 β Modules 9β11</span></h1>
<div class="subhead">
An interactive tutorial β Step by step<br>
<a href="modal.html?lang=en">β Back to the entry page</a> |
<a href="bundle2eng.pdf">π PDF of the bundle</a>
</div>
<!-- ===== PROGRESS ===== -->
<div class="progress-bar" id="progressBar">
<div class="fill" id="progressFill" style="width: 0%;"></div>
</div>
<div class="progress-text" id="progressText">Step 0 of 30</div>
<!-- ===== STEPS ===== -->
<div id="stepContainer"></div>
<!-- ===== NAVIGATION ===== -->
<div class="nav-links" id="navLinks">
<a href="#" id="prevBtn" class="disabled">β Back</a>
<span id="stepIndicator" style="font-size:0.85rem; color:#8b8b8b;">0 / 30</span>
<a href="#" id="nextBtn">Next β</a>
</div>
<!-- ===== FOOTER ===== -->
<div style="margin-top: 2.5rem; padding-top: 1rem; border-top: 1px solid #e0d6c8; font-size: 0.75rem; color: #8b8b8b; text-align: center;">
<p>Β© Paul Koop β <a href="modal.html?lang=en" style="color: #6b4f8a;">the-last-freedom.org/Projekt_Pompeji</a></p>
<p style="margin-top:0.2rem;">Bundle 2 guides through Modules 9, 10, and 11 β the Trinity in different approaches.</p>
</div>
</div>
<script>
// ================================================================
// DATA: 30 steps for Bundle 2 β Modules 9, 10, 11
// ================================================================
const steps = [
// ============================================================
// INTRODUCTION (Steps 0β2)
// ============================================================
{
id: 0,
title: "What is Bundle 2?",
part: "Introduction",
explanation: `
<p><strong>Bundle 2</strong> guides through the three modules that show the Trinity in <strong>different approaches</strong>:</p>
<ul>
<li><strong>Module 9:</strong> Bimodal Non-Compatibility in DeLillo and Van Dormael.</li>
<li><strong>Module 10:</strong> Unitarity as Theorem.</li>
<li><strong>Module 11:</strong> Timelessness and Presence.</li>
</ul>
<p>These three modules answer the question: <strong>How does the Trinity appear in different approaches?</strong></p>
<p>They build on Bundle 1 but presuppose only the foundations from <code>modal5.md</code>.</p>
`,
question_html: `
<p><strong>What is the goal of Bundle 2?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q0" value="0"> To refute the Trinity.</label>
<label><input type="radio" name="q0" value="1"> To show the Trinity in different approaches.</label>
<label><input type="radio" name="q0" value="2"> To prove the existence of God.</label>
<label><input type="radio" name="q0" value="3"> To expose the Trinity as an illusion.</label>
<label><input type="radio" name="q0" value="4"> To replace physics.</label>
<label><input type="radio" name="q0" value="5"> To ground theology.</label>
</div>
`,
answer: 1
},
{
id: 1,
title: "Recap: What Bundle 1 has shown",
part: "Introduction",
explanation: `
<p>In Bundle 1 it was shown:</p>
<ol>
<li><strong>Module 6:</strong> The minimal subset for the target statement is {ASP3, ASP4, ASP5}.</li>
<li><strong>Module 7:</strong> The Trinity is axiom-invariant.</li>
<li><strong>Module 8:</strong> The limit definition can be precisely grasped.</li>
</ol>
<p>Bundle 2 goes one step further: It shows how the Trinity appears in different <strong>perspectives</strong>.</p>
`,
question_html: `
<p><strong>What has Bundle 1 shown?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q1" value="0"> That the Trinity is impossible.</label>
<label><input type="radio" name="q1" value="1"> That the Trinity is axiom-invariant and can be precisely grasped.</label>
<label><input type="radio" name="q1" value="2"> That S5 is contradictory.</label>
<label><input type="radio" name="q1" value="3"> That physics is irrelevant.</label>
<label><input type="radio" name="q1" value="4"> That God does not exist.</label>
<label><input type="radio" name="q1" value="5"> That the Trinity is an illusion.</label>
</div>
`,
answer: 1
},
{
id: 2,
title: "The Three Approaches",
part: "Introduction",
explanation: `
<p>Bundle 2 shows three approaches to the Trinity:</p>
<ol>
<li><strong>Bimodal approach</strong> (Module 9): The Trinity appears in two perspectives β DeLillo and Van Dormael β that are not compatible but simultaneously true.</li>
<li><strong>Unitarity approach</strong> (Module 10): The Trinity guarantees that nothing is lost.</li>
<li><strong>Temporal approach</strong> (Module 11): The Trinity is timeless and present.</li>
</ol>
<p>All three approaches lead to the same structure β but in different ways.</p>
`,
question_html: `
<p><strong>Which three approaches does Bundle 2 show?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q2" value="0"> Logical, physical, theological</label>
<label><input type="radio" name="q2" value="1"> Bimodal, unitary, temporal</label>
<label><input type="radio" name="q2" value="2"> Monistic, dualistic, trialistic</label>
<label><input type="radio" name="q2" value="3"> Formal, informal, practical</label>
<label><input type="radio" name="q2" value="4"> Old, middle, new</label>
<label><input type="radio" name="q2" value="5"> Theoretical, practical, aesthetic</label>
</div>
`,
answer: 1
},
// ============================================================
// PART A: BIMODAL NON-COMPATIBILITY (Module 9) β Steps 3β12
// ============================================================
{
id: 3,
title: "PART A β Module 9: Bimodal Non-Compatibility",
part: "Part A",
explanation: `
<div style="background:#f8d7da; padding:0.5rem 1rem; border-radius:6px; margin-bottom:1rem;">
<span class="part-tag pA">PART A</span>
<strong>Module 9</strong>
</div>
<p><strong>Question:</strong> How can two perspectives β DeLillo and Van Dormael β be simultaneously true although they are not compatible?</p>
<p><strong>Answer:</strong> Through a <strong>bimodal modal logic</strong> with two accessibility relations R_D and R_V on the same set of worlds.</p>
<p><strong>Consequence:</strong> The Omega Point is a fixed point, not a state.</p>
`,
question_html: `
<p><strong>What is the main question of Module 9?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q3" value="0"> Whether the Trinity is true.</label>
<label><input type="radio" name="q3" value="1"> How two incompatible perspectives can be simultaneously true.</label>
<label><input type="radio" name="q3" value="2"> Whether S5 is contradictory.</label>
<label><input type="radio" name="q3" value="3"> Whether physics is relevant.</label>
<label><input type="radio" name="q3" value="4"> Whether God exists.</label>
<label><input type="radio" name="q3" value="5"> Whether the Trinity is an illusion.</label>
</div>
`,
answer: 1
},
{
id: 4,
title: "The Basic Idea of Bimodal Modal Logic",
part: "Part A",
explanation: `
<p>Classical modal logic uses <strong>one</strong> accessibility relation R. <strong>Bimodal modal logic</strong> uses <strong>two</strong> relations R_D and R_V on <strong>the same</strong> set of worlds.</p>
<div class="formula-box partA">β³ = (W, R_D, R_V, I)</div>
<p><strong>Intuition:</strong> Both relations describe <strong>the same reality</strong> β but from different perspectives.</p>
<p>The two necessity operators:</p>
<ul>
<li><span class="symbol">β‘_D p</span>: "Necessary in the DeLillo perspective."</li>
<li><span class="symbol">β‘_V p</span>: "Necessary in the Van Dormael perspective."</li>
</ul>
`,
question_html: `
<p><strong>What is new in bimodal modal logic?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q4" value="0"> It uses no worlds.</label>
<label><input type="radio" name="q4" value="1"> It uses two accessibility relations on the same set of worlds.</label>
<label><input type="radio" name="q4" value="2"> It uses no operators.</label>
<label><input type="radio" name="q4" value="3"> It is the same as S5.</label>
<label><input type="radio" name="q4" value="4"> It is contradictory.</label>
<label><input type="radio" name="q4" value="5"> It uses infinitely many relations.</label>
</div>
`,
answer: 1
},
{
id: 5,
title: "The DeLillo Perspective (β‘_D)",
part: "Part A",
explanation: `
<p>The <strong>DeLillo perspective</strong> corresponds to the <strong>Copenhagen interpretation</strong>:</p>
<ul>
<li><strong>Collapse:</strong> The wave function collapses upon measurement.</li>
<li><strong>One reality:</strong> Out of many possibilities comes <strong>one</strong> reality.</li>
<li><strong>Constitutive observer:</strong> Without observer no measurement, without measurement no collapse.</li>
<li><strong>Thinning:</strong> What does not collapse is <strong>not real</strong>.</li>
</ul>
<p><strong>Axiom:</strong></p>
<div class="formula-box partA">D4 := β‘_D(Observer β β‘_D Observer)</div>
`,
question_html: `
<p><strong>Which physical interpretation does the DeLillo perspective correspond to?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q5" value="0"> Many-Worlds Interpretation</label>
<label><input type="radio" name="q5" value="1"> Copenhagen interpretation</label>
<label><input type="radio" name="q5" value="2"> Bohmian mechanics</label>
<label><input type="radio" name="q5" value="3"> Relational quantum mechanics</label>
<label><input type="radio" name="q5" value="4"> QBism</label>
<label><input type="radio" name="q5" value="5"> Classical mechanics</label>
</div>
`,
answer: 1
},
{
id: 6,
title: "The Van Dormael Perspective (β‘_V)",
part: "Part A",
explanation: `
<p>The <strong>Van Dormael perspective</strong> corresponds to the <strong>Many-Worlds Interpretation (MWI)</strong>:</p>
<ul>
<li><strong>No collapse:</strong> The wave function does <strong>not</strong> collapse.</li>
<li><strong>All realities:</strong> Every possibility is realized in a world.</li>
<li><strong>Non-constitutive observer:</strong> The observer is himself part of the branching.</li>
<li><strong>Fullness:</strong> What does not collapse is <strong>real</strong>.</li>
</ul>
<p><strong>Axiom:</strong></p>
<div class="formula-box partA">V4 := β‘_V(Observer β β_V Β¬Observer)</div>
`,
question_html: `
<p><strong>Which physical interpretation does the Van Dormael perspective correspond to?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q6" value="0"> Copenhagen interpretation</label>
<label><input type="radio" name="q6" value="1"> Many-Worlds Interpretation</label>
<label><input type="radio" name="q6" value="2"> Bohmian mechanics</label>
<label><input type="radio" name="q6" value="3"> Relational quantum mechanics</label>
<label><input type="radio" name="q6" value="4"> QBism</label>
<label><input type="radio" name="q6" value="5"> Classical mechanics</label>
</div>
`,
answer: 1
},
{
id: 7,
title: "The Omega Point as Fixed Point",
part: "Part A",
explanation: `
<p>The <strong>Omega Point</strong> is defined as the set of worlds in which <strong>both perspectives hold simultaneously</strong>:</p>
<div class="formula-box partA important">Ξ© := { w β W | β‘_D p @ w β§ β‘_V Β¬p @ w }</div>
<p>for a suitable proposition p (e.g., p := "There is exactly one reality").</p>
<p><strong>Meaning:</strong> The Omega Point is <strong>not a state</strong> that one could reach. It is a <strong>fixed point</strong> β a set of worlds in which both perspectives hold <strong>simultaneously</strong>.</p>
`,
question_html: `
<p><strong>What is the Omega Point?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q7" value="0"> A state that one can reach.</label>
<label><input type="radio" name="q7" value="1"> A fixed point β a set of worlds in which both perspectives hold simultaneously.</label>
<label><input type="radio" name="q7" value="2"> A contradiction.</label>
<label><input type="radio" name="q7" value="3"> An illusion.</label>
<label><input type="radio" name="q7" value="4"> An axiom.</label>
<label><input type="radio" name="q7" value="5"> A time.</label>
</div>
`,
answer: 1
},
{
id: 8,
title: "The Consistency of the Two Perspectives",
part: "Part A",
explanation: `
<p><strong>Main result:</strong> There are consistent bimodal S5 models in which Ξ© β β
.</p>
<p><strong>Construction:</strong></p>
<ul>
<li>W = {wβ}</li>
<li>R_D = {(wβ, wβ)} (S5)</li>
<li>R_V = {(wβ, wβ)} (S5)</li>
<li>p @ wβ: true in R_D-perspective, false in R_V-perspective</li>
</ul>
<p><strong>Verification:</strong> β‘_D p @ wβ holds and β‘_V Β¬p @ wβ holds. Hence wβ β Ξ©.</p>
<p><strong>Consequence:</strong> Non-compatibility is <strong>not an inconsistency</strong>, but a structural property of reality.</p>
`,
question_html: `
<p><strong>What does the consistency proof show?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q8" value="0"> That the two perspectives are inconsistent.</label>
<label><input type="radio" name="q8" value="1"> That there are consistent models in which both perspectives hold simultaneously.</label>
<label><input type="radio" name="q8" value="2"> That one of the perspectives is false.</label>
<label><input type="radio" name="q8" value="3"> That there are no perspectives.</label>
<label><input type="radio" name="q8" value="4"> That physics is irrelevant.</label>
<label><input type="radio" name="q8" value="5"> That S5 is contradictory.</label>
</div>
`,
answer: 1
},
{
id: 9,
title: "The Consequence: The Omega Point Is a Relation",
part: "Part A",
explanation: `
<p>The Omega Point is <strong>not a state</strong>, but a <strong>relation</strong> between two perspectives:</p>
<ul>
<li>It is not the end of time.</li>
<li>It is not a goal that one could reach.</li>
<li>It is the <strong>structure</strong> of reality as a relation between two perspectives.</li>
</ul>
<p><strong>Consequence:</strong> Whoever holds one of the two perspectives for the whole <strong>loses the Omega Point</strong>. It becomes an ideology.</p>
`,
question_html: `
<p><strong>What is the Omega Point in Module 9?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q9" value="0"> A state.</label>
<label><input type="radio" name="q9" value="1"> A relation between two perspectives.</label>
<label><input type="radio" name="q9" value="2"> A goal.</label>
<label><input type="radio" name="q9" value="3"> A contradiction.</label>
<label><input type="radio" name="q9" value="4"> An illusion.</label>
<label><input type="radio" name="q9" value="5"> A time.</label>
</div>
`,
answer: 1
},
{
id: 10,
title: "Bundle 2 β Part A: Summary",
part: "Part A",
explanation: `
<div style="background:#f8d7da; padding:0.8rem 1.2rem; border-radius:8px;">
<p style="font-weight:bold; color:#8a3a3a;">Result of Module 9:</p>
<div class="formula-box partA important">DeLillo and Van Dormael are not compatible, but simultaneously true.</div>
<p>The Omega Point is a fixed point β a relation, not a state.</p>
<p>Both perspectives are paths to the same limit.</p>
</div>
`,
question_html: `
<p><strong>What is the conclusion of Part A?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q10" value="0"> The two perspectives are inconsistent.</label>
<label><input type="radio" name="q10" value="1"> The two perspectives are not compatible but simultaneously true.</label>
<label><input type="radio" name="q10" value="2"> One of the perspectives is false.</label>
<label><input type="radio" name="q10" value="3"> There are no perspectives.</label>
<label><input type="radio" name="q10" value="4"> Physics is irrelevant.</label>
<label><input type="radio" name="q10" value="5"> S5 is contradictory.</label>
</div>
`,
answer: 1
},
{
id: 11,
title: "Comparison of the Two Approaches",
part: "Part A",
explanation: `
<p>The two perspectives in comparison:</p>
<table style="width:100%; border-collapse:collapse; margin:1rem 0; font-size:0.9rem;">
<tr style="background:#e0d6c8;">
<th style="border:1px solid #d4cab8; padding:0.4rem; text-align:left;">Aspect</th>
<th style="border:1px solid #d4cab8; padding:0.4rem; text-align:left;">DeLillo (Copenhagen)</th>
<th style="border:1px solid #d4cab8; padding:0.4rem; text-align:left;">Van Dormael (MWI)</th>
</tr>
<tr>
<td style="border:1px solid #d4cab8; padding:0.4rem;">Collapse</td>
<td style="border:1px solid #d4cab8; padding:0.4rem;">Yes</td>
<td style="border:1px solid #d4cab8; padding:0.4rem;">No</td>
</tr>
<tr>
<td style="border:1px solid #d4cab8; padding:0.4rem;">Reality</td>
<td style="border:1px solid #d4cab8; padding:0.4rem;">One</td>
<td style="border:1px solid #d4cab8; padding:0.4rem;">Many</td>
</tr>
<tr>
<td style="border:1px solid #d4cab8; padding:0.4rem;">Observer</td>
<td style="border:1px solid #d4cab8; padding:0.4rem;">Constitutive</td>
<td style="border:1px solid #d4cab8; padding:0.4rem;">Non-constitutive</td>
</tr>
<tr>
<td style="border:1px solid #d4cab8; padding:0.4rem;">Image</td>
<td style="border:1px solid #d4cab8; padding:0.4rem;">Stones</td>
<td style="border:1px solid #d4cab8; padding:0.4rem;">Branchings</td>
</tr>
</table>
`,
question_html: `
<p><strong>How do the two perspectives differ regarding the observer?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q11" value="0"> DeLillo: non-constitutive; Van Dormael: constitutive</label>
<label><input type="radio" name="q11" value="1"> DeLillo: constitutive; Van Dormael: non-constitutive</label>
<label><input type="radio" name="q11" value="2"> Both: constitutive</label>
<label><input type="radio" name="q11" value="3"> Both: non-constitutive</label>
<label><input type="radio" name="q11" value="4"> Neither has an observer</label>
<label><input type="radio" name="q11" value="5"> The observer is irrelevant</label>
</div>
`,
answer: 1
},
{
id: 12,
title: "Transition to Part B",
part: "Part A",
explanation: `
<p>Module 9 has shown: The Trinity appears in two perspectives that are not compatible but simultaneously true. The question remained open:</p>
<p><strong>How can the resurrection be derived from weaker assumptions?</strong></p>
<p>This question is treated in <strong>Module 10</strong>.</p>
`,
question_html: `
<p><strong>Which question does Module 10 treat?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q12" value="0"> Whether the Trinity is true.</label>
<label><input type="radio" name="q12" value="1"> How the resurrection can be derived from weaker assumptions.</label>
<label><input type="radio" name="q12" value="2"> Whether S5 is contradictory.</label>
<label><input type="radio" name="q12" value="3"> Whether physics is relevant.</label>
<label><input type="radio" name="q12" value="4"> Whether God exists.</label>
<label><input type="radio" name="q12" value="5"> Whether the Trinity is an illusion.</label>
</div>
`,
answer: 1
},
// ============================================================
// PART B: UNITARITY AS THEOREM (Module 10) β Steps 13β21
// ============================================================
{
id: 13,
title: "PART B β Module 10: Unitarity as Theorem",
part: "Part B",
explanation: `
<div style="background:#d4e4f7; padding:0.5rem 1rem; border-radius:6px; margin-bottom:1rem;">
<span class="part-tag pB">PART B</span>
<strong>Module 10</strong>
</div>
<p><strong>Question:</strong> How can the resurrection be derived from weaker assumptions?</p>
<p><strong>Answer:</strong> Through the three principles U1βU3 and the operator π ("information is conserved").</p>
<p><strong>Consequence:</strong> Unitarity is the structure of Totality T itself.</p>
`,
question_html: `
<p><strong>What is the main question of Module 10?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q13" value="0"> Whether the Trinity is true.</label>
<label><input type="radio" name="q13" value="1"> How the resurrection can be derived from weaker assumptions.</label>
<label><input type="radio" name="q13" value="2"> Whether S5 is contradictory.</label>
<label><input type="radio" name="q13" value="3"> Whether physics is relevant.</label>
<label><input type="radio" name="q13" value="4"> Whether God exists.</label>
<label><input type="radio" name="q13" value="5"> Whether the Trinity is an illusion.</label>
</div>
`,
answer: 1
},
{
id: 14,
title: "From Strong Axioms to Weaker Principles",
part: "Part B",
explanation: `
<p>In <code>modal5.md</code>, the resurrection was derived from the strong axioms A16βA20:</p>
<div class="formula-box partB">A16 := βc(Consciousness(c) β integrated(c, S))</div>
<div class="formula-box partB">A18 := β‘βI(Existence(I) β Conservation(I))</div>
<p>These axioms are <strong>strong</strong>. They presuppose that all consciousnesses are integrated into S.</p>
<p>Module 10 shows: <strong>Unitarity can be derived from weaker assumptions.</strong></p>
`,
question_html: `
<p><strong>Why are axioms A16βA20 strong?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q14" value="0"> Because they are too short.</label>
<label><input type="radio" name="q14" value="1"> Because they presuppose that all consciousnesses are integrated into S.</label>
<label><input type="radio" name="q14" value="2"> Because they contradict A1.</label>
<label><input type="radio" name="q14" value="3"> Because they are not axioms.</label>
<label><input type="radio" name="q14" value="4"> Because they are too long.</label>
<label><input type="radio" name="q14" value="5"> Because they are true.</label>
</div>
`,
answer: 1
},
{
id: 15,
title: "The Operator π (Information)",
part: "Part B",
explanation: `
<p>The operator <strong>π</strong> formalizes the concept of <strong>information conservation</strong>:</p>
<div class="formula-box partB">πp @ w βΊ the information about p is conserved in w</div>
<p><strong>Axioms:</strong></p>
<ul>
<li>I1: πp β βp</li>
<li>I2: π(p β§ q) β (πp β§ πq)</li>
<li>I3: πΒ¬p β Β¬πp</li>
<li>I4: πp β β‘πp</li>
</ul>
<p><strong>Important:</strong> π is <strong>not</strong> a normal operator. It does <strong>not</strong> satisfy the Kripke axiom K.</p>
`,
question_html: `
<p><strong>What does the operator π formalize?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q15" value="0"> Necessity</label>
<label><input type="radio" name="q15" value="1"> Information conservation</label>
<label><input type="radio" name="q15" value="2"> Possibility</label>
<label><input type="radio" name="q15" value="3"> Contradiction</label>
<label><input type="radio" name="q15" value="4"> Time</label>
<label><input type="radio" name="q15" value="5"> Consciousness</label>
</div>
`,
answer: 1
},
{
id: 16,
title: "Principle U1: Realization Implies Information Conservation",
part: "Part B",
explanation: `
<p><strong>U1:</strong></p>
<div class="formula-box partB important">U1 := β‘βp(Realized(p) β πp)</div>
<p><strong>Reading:</strong> If p is realized, then the information about p is conserved.</p>
<p><strong>Meaning:</strong> What was once real cannot fully disappear. It remains conserved as information β even if the original form is lost.</p>
`,
question_html: `
<p><strong>What does U1 state?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q16" value="0"> Realization implies destruction.</label>
<label><input type="radio" name="q16" value="1"> Realization implies information conservation.</label>
<label><input type="radio" name="q16" value="2"> Realization is impossible.</label>
<label><input type="radio" name="q16" value="3"> Realization is the same as necessity.</label>
<label><input type="radio" name="q16" value="4"> Realization is irrelevant.</label>
<label><input type="radio" name="q16" value="5"> Realization is an illusion.</label>
</div>
`,
answer: 1
},
{
id: 17,
title: "Principle U2: Death Is Local Access Loss",
part: "Part B",
explanation: `
<p><strong>U2:</strong></p>
<div class="formula-box partB important">U2 := β‘βc(Death(c) β Β¬β_local Access(c))</div>
<p><strong>Reading:</strong> The death of a consciousness c is the loss of <strong>local</strong> access to c.</p>
<p><strong>Meaning:</strong> Death is <strong>not</strong> extinction. It is an access loss. From the perspective of c, it appears as an end. From the perspective of S, it is a transition.</p>
`,
question_html: `
<p><strong>What does U2 state?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q17" value="0"> Death is the end of everything.</label>
<label><input type="radio" name="q17" value="1"> Death is a local access loss.</label>
<label><input type="radio" name="q17" value="2"> Death is an illusion.</label>
<label><input type="radio" name="q17" value="3"> Death is a new beginning.</label>
<label><input type="radio" name="q17" value="4"> Death is the same as life.</label>
<label><input type="radio" name="q17" value="5"> Death is impossible.</label>
</div>
`,
answer: 1
},
{
id: 18,
title: "Principle U3: Global Integration Is Possible",
part: "Part B",
explanation: `
<p><strong>U3:</strong></p>
<div class="formula-box partB important">U3 := β‘βc(Death(c) β β_global Integration(c, S))</div>
<p><strong>Reading:</strong> The death of a consciousness c makes its <strong>global</strong> integration into S possible.</p>
<p><strong>Meaning:</strong> Death is <strong>not the end</strong>. It is the condition of the possibility of integration. What is lost locally is integrated globally.</p>
`,
question_html: `
<p><strong>What does U3 state?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q18" value="0"> Death makes integration impossible.</label>
<label><input type="radio" name="q18" value="1"> Death makes global integration possible.</label>
<label><input type="radio" name="q18" value="2"> Death is irrelevant.</label>
<label><input type="radio" name="q18" value="3"> Death is an illusion.</label>
<label><input type="radio" name="q18" value="4"> Death is the same as integration.</label>
<label><input type="radio" name="q18" value="5"> Death is impossible.</label>
</div>
`,
answer: 1
},
{
id: 19,
title: "Proof: Unitarity Implies Resurrection",
part: "Part B",
explanation: `
<p><strong>Theorem U-A:</strong> In S5+U1βU3:</p>
<div class="formula-box partB important">β‘βc(Consciousness(c) β βResurrection(c))</div>
<p><strong>Proof sketch:</strong></p>
<ol>
<li>Let c be a consciousness. Suppose c dies.</li>
<li>From U2: Local access to c is lost.</li>
<li>From U1: The information about c is conserved.</li>
<li>From U3: The global integration of c into S is possible.</li>
<li>Definition: Resurrection(c) := Integration(c, S).</li>
<li>Therefore: βResurrection(c).</li>
<li>With Necessitation: β‘βc(Consciousness(c) β βResurrection(c)).</li>
</ol>
`,
question_html: `
<p><strong>What follows from U1βU3?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q19" value="0"> Resurrection is impossible.</label>
<label><input type="radio" name="q19" value="1"> Resurrection is possible for every consciousness.</label>
<label><input type="radio" name="q19" value="2"> Resurrection is an illusion.</label>
<label><input type="radio" name="q19" value="3"> Resurrection is identical to death.</label>
<label><input type="radio" name="q19" value="4"> Resurrection is identical to nothing.</label>
<label><input type="radio" name="q19" value="5"> Resurrection is irrelevant.</label>
</div>
`,
answer: 1
},
{
id: 20,
title: "Unitarity as the Structure of T",
part: "Part B",
explanation: `
<p><strong>Central insight:</strong> Unitarity is <strong>not an additional assumption</strong>. It is the <strong>structure</strong> of Totality T itself:</p>
<div class="formula-box partB important">βΞ³ β T : Ξ³ β T</div>
<p><strong>Reading:</strong> For every path Ξ³ that is a subset of T: Ξ³ is an element of T.</p>
<p><strong>Consequence:</strong> Totality T contains <strong>all</strong> paths β including those that do not reach the Omega Point. There is <strong>no escape</strong> from T.</p>
`,
question_html: `
<p><strong>What is unitarity in Module 10?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q20" value="0"> An additional assumption.</label>
<label><input type="radio" name="q20" value="1"> The structure of Totality T itself.</label>
<label><input type="radio" name="q20" value="2"> An illusion.</label>
<label><input type="radio" name="q20" value="3"> A contradiction.</label>
<label><input type="radio" name="q20" value="4"> A time.</label>
<label><input type="radio" name="q20" value="5"> An axiom.</label>
</div>
`,
answer: 1
},
{
id: 21,
title: "Bundle 2 β Part B: Summary",
part: "Part B",
explanation: `
<div style="background:#d4e4f7; padding:0.8rem 1.2rem; border-radius:8px;">
<p style="font-weight:bold; color:#3a5a8a;">Result of Module 10:</p>
<div class="formula-box partB important">Unitarity is not an additional assumption β it is the structure of T.</div>
<p>From U1βU3, resurrection follows as a theorem.</p>
<p>The "intervention" of the Omega Point is structural, not temporal.</p>
</div>
`,
question_html: `
<p><strong>What is the conclusion of Part B?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q21" value="0"> Resurrection is impossible.</label>
<label><input type="radio" name="q21" value="1"> Unitarity is the structure of T; resurrection follows as a theorem.</label>
<label><input type="radio" name="q21" value="2"> Resurrection is an illusion.</label>
<label><input type="radio" name="q21" value="3"> Resurrection is identical to death.</label>
<label><input type="radio" name="q21" value="4"> Resurrection is identical to nothing.</label>
<label><input type="radio" name="q21" value="5"> Resurrection is irrelevant.</label>
</div>
`,
answer: 1
},
// ============================================================
// PART C: TEMPORAL MODAL LOGIC (Module 11) β Steps 22β29
// ============================================================
{
id: 22,
title: "PART C β Module 11: Temporal Modal Logic",
part: "Part C",
explanation: `
<div style="background:#e8e0f0; padding:0.5rem 1rem; border-radius:6px; margin-bottom:1rem;">
<span class="part-tag pC">PART C</span>
<strong>Module 11</strong>
</div>
<p><strong>Question:</strong> How can the time structure of the Trinity be precisely grasped?</p>
<p><strong>Answer:</strong> Through the temporal operators P, F, N, Z and the axioms T1βT4.</p>
<p><strong>Consequence:</strong> The Trinity is timeless and present.</p>
`,
question_html: `
<p><strong>What is the main question of Module 11?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q22" value="0"> Whether the Trinity is true.</label>
<label><input type="radio" name="q22" value="1"> How the time structure of the Trinity can be precisely grasped.</label>
<label><input type="radio" name="q22" value="2"> Whether S5 is contradictory.</label>
<label><input type="radio" name="q22" value="3"> Whether physics is relevant.</label>
<label><input type="radio" name="q22" value="4"> Whether God exists.</label>
<label><input type="radio" name="q22" value="5"> Whether the Trinity is an illusion.</label>
</div>
`,
answer: 1
},
{
id: 23,
title: "The Informal Time Structure",
part: "Part C",
explanation: `
<p>In <code>Unitaritaet.md</code> and <code>DieZeitlosigkeitDerSteine2.md</code>, the distinction plays a central role:</p>
<ul>
<li><strong>Past</strong> as horizon of knowledge.</li>
<li><strong>Future</strong> as horizon of knowledge.</li>
<li><strong>Present</strong> as locus of reality.</li>
<li><strong>Timelessness</strong> as limit.</li>
</ul>
<p>This distinction is <strong>informal</strong>. Module 11 provides a temporal modal-logical version of it.</p>
`,
question_html: `
<p><strong>What is the present in the time structure?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q23" value="0"> A horizon of knowledge.</label>
<label><input type="radio" name="q23" value="1"> The locus of reality.</label>
<label><input type="radio" name="q23" value="2"> A limit.</label>
<label><input type="radio" name="q23" value="3"> An illusion.</label>
<label><input type="radio" name="q23" value="4"> A contradiction.</label>
<label><input type="radio" name="q23" value="5"> An axiom.</label>
</div>
`,
answer: 1
},
{
id: 24,
title: "The Four Time Modes: P, F, N, Z",
part: "Part C",
explanation: `
<p>We extend S5 by <strong>four</strong> temporal operators:</p>
<ul>
<li><strong>P p</strong> (past): "It was the case that p."</li>
<li><strong>F p</strong> (future): "It will be the case that p."</li>
<li><strong>N p</strong> (present): "It is now the case that p."</li>
<li><strong>Z p</strong> (timelessness): "It is timelessly the case that p."</li>
</ul>
<p><strong>Semantics:</strong></p>
<div class="formula-box partC">
P p @ w βΊ βv (v < w β§ p @ v)<br>
F p @ w βΊ βv (w < v β§ p @ v)<br>
N p @ w βΊ p @ w<br>
Z p @ w βΊ βv (p @ v)
</div>
`,
question_html: `
<p><strong>How many temporal operators does Module 11 use?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q24" value="0"> Two</label>
<label><input type="radio" name="q24" value="1"> Three</label>
<label><input type="radio" name="q24" value="2"> Four</label>
<label><input type="radio" name="q24" value="3"> Five</label>
<label><input type="radio" name="q24" value="4"> Six</label>
<label><input type="radio" name="q24" value="5"> Seven</label>
</div>
`,
answer: 2
},
{
id: 25,
title: "The Axioms T1βT4",
part: "Part C",
explanation: `
<p>The axioms of the temporal extension:</p>
<ul>
<li><strong>T1:</strong> β‘(N p β p) β Present is real.</li>
<li><strong>T2:</strong> β‘(P p β Β¬N p) β Past is not present.</li>
<li><strong>T3:</strong> β‘(Z p β β‘p) β Timelessness implies necessity.</li>
<li><strong>T4:</strong> β‘(βp β (P p β¨ N p β¨ F p β¨ Z p)) β Completeness of time modes.</li>
</ul>
<p><strong>T3</strong> is particularly important: Timelessness is <strong>stronger</strong> than necessity.</p>
`,
question_html: `
<p><strong>What does T3 state?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q25" value="0"> Present is real.</label>
<label><input type="radio" name="q25" value="1"> Timelessness implies necessity.</label>
<label><input type="radio" name="q25" value="2"> Past is not present.</label>
<label><input type="radio" name="q25" value="3"> Every possibility is temporally located.</label>
<label><input type="radio" name="q25" value="4"> Future is impossible.</label>
<label><input type="radio" name="q25" value="5"> Time is an illusion.</label>
</div>
`,
answer: 1
},
{
id: 26,
title: "Reconstruction of the Trinity as Z(U β§ T β§ S)",
part: "Part C",
explanation: `
<p>The Trinity is reconstructed as a <strong>timeless</strong> structure:</p>
<div class="formula-box partC important">Tr := Z(U β§ T β§ S)</div>
<p><strong>Reading:</strong> The Trinity is <strong>timelessly</strong> the case. It is not in time, but in the <strong>structure</strong> of time.</p>
<p><strong>Derivation:</strong></p>
<ol>
<li>From modal5.md: β‘(U β§ T β§ S).</li>
<li>From the timelessness of the Trinity: Z(U β§ T β§ S).</li>
<li>From T3: β‘(U β§ T β§ S).</li>
</ol>
`,
question_html: `
<p><strong>How is the Trinity reconstructed in Module 11?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q26" value="0"> Tr := U β§ T β§ S</label>
<label><input type="radio" name="q26" value="1"> Tr := Z(U β§ T β§ S)</label>
<label><input type="radio" name="q26" value="2"> Tr := β‘(U β§ T β§ S)</label>
<label><input type="radio" name="q26" value="3"> Tr := β(U β§ T β§ S)</label>
<label><input type="radio" name="q26" value="4"> Tr := P(U β§ T β§ S)</label>
<label><input type="radio" name="q26" value="5"> Tr := F(U β§ T β§ S)</label>
</div>
`,
answer: 1
},
{
id: 27,
title: "Timelessness and Presence Are Compatible",
part: "Part C",
explanation: `
<p><strong>Theorem Z-A:</strong> In S5+T1βT4:</p>
<div class="formula-box partC important">β‘(Z(U β§ T β§ S) β§ N(U β§ T β§ S))</div>
<p><strong>Reading:</strong> The Trinity is <strong>both timeless and present</strong>.</p>
<p><strong>Meaning:</strong> The two modes are <strong>compatible</strong>. The Trinity is not bound to one mode.</p>
`,
question_html: `
<p><strong>What follows from T1βT4 for the Trinity?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q27" value="0"> The Trinity is impossible.</label>
<label><input type="radio" name="q27" value="1"> The Trinity is timeless and present.</label>
<label><input type="radio" name="q27" value="2"> The Trinity is an illusion.</label>
<label><input type="radio" name="q27" value="3"> The Trinity is only in the past.</label>
<label><input type="radio" name="q27" value="4"> The Trinity is only in the future.</label>
<label><input type="radio" name="q27" value="5"> The Trinity is contradictory.</label>
</div>
`,
answer: 1
},
{
id: 28,
title: "The Timelessness of Structural Integration",
part: "Part C",
explanation: `
<p>In Module 10 it was shown: Unitarity is the structure of T. The integration of paths that do not reach the Omega Point is <strong>structural</strong>, not temporal.</p>
<p>Module 11 makes this precise:</p>
<div class="formula-box partC important">Z(βΞ³ β T : Ξ³ β T)</div>
<p><strong>Reading:</strong> It is <strong>timelessly</strong> the case that for every path Ξ³ that is a subset of T: Ξ³ is an element of T.</p>
<p><strong>Consequence:</strong> Integration has <strong>always already</strong> happened. From the perspective of a path, it appears as future.</p>
`,
question_html: `
<p><strong>What is structural integration in Module 11?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q28" value="0"> A temporal event.</label>
<label><input type="radio" name="q28" value="1"> A timeless structure β always already happened.</label>
<label><input type="radio" name="q28" value="2"> An illusion.</label>
<label><input type="radio" name="q28" value="3"> A contradiction.</label>
<label><input type="radio" name="q28" value="4"> A time.</label>
<label><input type="radio" name="q28" value="5"> An axiom.</label>
</div>
`,
answer: 1
},
{
id: 29,
title: "Bundle 2 β Conclusion: The Trinity in Different Approaches",
part: "Part C",
explanation: `
<p><strong>Summary of Bundle 2:</strong></p>
<ol>
<li><strong>Module 9:</strong> The Trinity appears in two perspectives (DeLillo and Van Dormael) that are not compatible but simultaneously true.</li>
<li><strong>Module 10:</strong> Unitarity is the structure of T; resurrection follows as a theorem from U1βU3.</li>
<li><strong>Module 11:</strong> The Trinity is timeless and present β Z(U β§ T β§ S) β§ N(U β§ T β§ S).</li>
</ol>
<div class="formula-box important" style="font-size:1.1rem;">
The Trinity appears in different approaches β <strong>bimodal</strong>, <strong>unitary</strong>, <strong>temporal</strong> β and yet leads to the same structure.
</div>
<p style="margin-top:1rem; text-align:center; font-style:italic; color:#555;">
What remains is the insight that the Trinity is <strong>timeless</strong> and manifests itself <strong>presently</strong>.
</p>
`,
question_html: `
<p><strong>What is the conclusion of Bundle 2?</strong></p>
<div class="qoptions">
<label><input type="radio" name="q29" value="0"> The Trinity is impossible.</label>
<label><input type="radio" name="q29" value="1"> The Trinity appears in different approaches and yet leads to the same structure.</label>
<label><input type="radio" name="q29" value="2"> S5 is contradictory.</label>
<label><input type="radio" name="q29" value="3"> Physics is irrelevant.</label>
<label><input type="radio" name="q29" value="4"> God does not exist.</label>
<label><input type="radio" name="q29" value="5"> The Trinity is an illusion.</label>
</div>
`,
answer: 1
}
];
// ================================================================
// LOGIC
// ================================================================
let currentStep = 0;
const totalSteps = steps.length;
const stepContainer = document.getElementById('stepContainer');
const prevBtn = document.getElementById('prevBtn');
const nextBtn = document.getElementById('nextBtn');
const stepIndicator = document.getElementById('stepIndicator');
const progressFill = document.getElementById('progressFill');
const progressText = document.getElementById('progressText');
let stepCompleted = new Array(totalSteps).fill(false);
function renderStep(index) {
const step = steps[index];
if (!step) return;
const partClass = step.part === 'Part A' ? 'partA' :
step.part === 'Part B' ? 'partB' :
step.part === 'Part C' ? 'partC' : '';
let html = `
<div class="step-block ${partClass}">
<div class="step-number ${partClass}">Step ${index} of ${totalSteps-1} β ${step.part}</div>
<div class="step-title">${step.title}</div>
<div class="step-explanation">${step.explanation}</div>
<div class="question-box" id="questionBox${index}">
${step.question_html}
<button class="qsubmit" data-step="${index}">Check answer</button>
<div class="qfeedback" id="feedback${index}"></div>
</div>
</div>
`;
stepContainer.innerHTML = html;
const submitBtn = document.querySelector(`.qsubmit[data-step="${index}"]`);
if (submitBtn) {
submitBtn.addEventListener('click', function(e) {
checkAnswer(index);
});
}
const questionBox = document.getElementById(`questionBox${index}`);
if (questionBox) {
const radioInputs = questionBox.querySelectorAll('input[type="radio"]');
radioInputs.forEach(input => {
input.addEventListener('keydown', function(e) {
if (e.key === 'Enter') {
e.preventDefault();
checkAnswer(index);
}
});
});
}
updateNav(index);
updateProgress(index);
if (stepCompleted[index]) {
const feedback = document.getElementById(`feedback${index}`);
if (feedback) {
feedback.className = 'qfeedback correct';
feedback.textContent = 'β
Correct! You have already completed this step.';
feedback.style.display = 'block';
}
const submitBtn2 = document.querySelector(`.qsubmit[data-step="${index}"]`);
if (submitBtn2) submitBtn2.disabled = true;
}
document.querySelector('.step-block').scrollIntoView({ behavior: 'smooth', block: 'start' });
}
function checkAnswer(index) {
if (stepCompleted[index]) return;
const step = steps[index];
const questionBox = document.getElementById(`questionBox${index}`);
const feedback = document.getElementById(`feedback${index}`);
const selected = questionBox.querySelector('input[type="radio"]:checked');
if (!selected) {
feedback.className = 'qfeedback wrong';
feedback.textContent = 'β Please select an answer.';
feedback.style.display = 'block';
return;
}
const userAnswer = parseInt(selected.value);
const isCorrect = (userAnswer === step.answer);
if (isCorrect) {
feedback.className = 'qfeedback correct';
feedback.textContent = 'β
Correct! You may proceed to the next step.';
feedback.style.display = 'block';
stepCompleted[index] = true;
const submitBtn = questionBox.querySelector('.qsubmit');
if (submitBtn) submitBtn.disabled = true;
const radios = questionBox.querySelectorAll('input[type="radio"]');
radios.forEach(r => r.disabled = true);
updateNav(index);
updateProgress(index);
if (stepCompleted.every(v => v === true)) {
setTimeout(() => {
alert('π Congratulations! You have successfully completed Bundle 2!');
}, 400);
}
} else {
feedback.className = 'qfeedback wrong';
feedback.textContent = 'β Incorrect. Please read the step again and try again.';
feedback.style.display = 'block';
}
}
function updateNav(index) {
if (index > 0) {
prevBtn.className = '';
prevBtn.style.pointerEvents = 'auto';
prevBtn.style.opacity = '1';
} else {
prevBtn.className = 'disabled';
prevBtn.style.pointerEvents = 'none';
prevBtn.style.opacity = '0.5';
}
if (index < totalSteps - 1 && stepCompleted[index]) {
nextBtn.className = '';
nextBtn.style.pointerEvents = 'auto';
nextBtn.style.opacity = '1';
nextBtn.textContent = 'Next β';
} else if (index === totalSteps - 1 && stepCompleted[index]) {
nextBtn.className = '';
nextBtn.style.pointerEvents = 'auto';
nextBtn.style.opacity = '1';
nextBtn.textContent = 'π Done β back to the entry page';
nextBtn.href = 'modal.html?lang=en';
} else {
nextBtn.className = 'disabled';
nextBtn.style.pointerEvents = 'none';
nextBtn.style.opacity = '0.5';
if (index === totalSteps - 1) {
nextBtn.textContent = 'π Final step β complete all steps';
} else {
nextBtn.textContent = 'Next β (please answer the question first)';
}
}
stepIndicator.textContent = `${index} / ${totalSteps-1}`;
}
function updateProgress(index) {
const completedCount = stepCompleted.filter(v => v === true).length;
const percent = (completedCount / totalSteps) * 100;
progressFill.style.width = `${percent}%`;
progressText.textContent = `Step ${index} of ${totalSteps-1} β ${completedCount}/${totalSteps} completed`;
}
prevBtn.addEventListener('click', function(e) {
e.preventDefault();
if (currentStep > 0) {
currentStep--;
renderStep(currentStep);
}
});
nextBtn.addEventListener('click', function(e) {
e.preventDefault();
if (currentStep < totalSteps - 1 && stepCompleted[currentStep]) {
currentStep++;
renderStep(currentStep);
} else if (currentStep === totalSteps - 1 && stepCompleted[currentStep]) {
window.location.href = 'modal.html?lang=en';
}
});
renderStep(0);
</script>
</body>
</html>