merge necessary as upstream developed while storyline slept
commit
71904d5460
@ -0,0 +1,52 @@
|
||||
import { faShield } from '@fortawesome/free-solid-svg-icons';
|
||||
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
||||
import * as React from 'react'
|
||||
|
||||
const PrivacyPolicy: React.FC = () => {
|
||||
const [open, setOpen] = React.useState(false);
|
||||
const handleOpen = () => setOpen(true);
|
||||
const handleClose = () => setOpen(false);
|
||||
|
||||
return (
|
||||
<span>
|
||||
<div className="privacy" onClick={handleOpen} title="Privacy Policy & Impressum">
|
||||
<FontAwesomeIcon icon={faShield} />
|
||||
<p className="p1">legal</p>
|
||||
<p className="p2">notes</p>
|
||||
</div>
|
||||
{open?
|
||||
<div className="modal-wrapper">
|
||||
<div className="modal-backdrop" onClick={handleClose} />
|
||||
<div className="modal">
|
||||
<div className="codicon codicon-close modal-close" onClick={handleClose}></div>
|
||||
<h2>Privacy Policy & Impressum</h2>
|
||||
|
||||
<p>Our server collects metadata (such as IP address, browser, operating system)
|
||||
and the data that the user enters into the editor. The data is used to
|
||||
compute the Lean output and display it to the user. The information will be stored
|
||||
as long as the user stays on our website and will be deleted immediately afterwards.
|
||||
We keep logs to improve our software, but the contained data is anonymized.</p>
|
||||
|
||||
<p>We do not use cookies, but your game progress is stored in the browser
|
||||
as site data. Your game progress is not saved on the server; if you delete
|
||||
your browser storage, it is completely gone.
|
||||
</p>
|
||||
|
||||
<p>Our server is located in Germany.</p>
|
||||
|
||||
<p><strong>Contact information:</strong><br />
|
||||
Jon Eugster<br />
|
||||
Mathematisches Institut der Heinrich-Heine-Universität Düsseldorf<br />
|
||||
Universitätsstr. 1<br />
|
||||
40225 Düsseldorf<br />
|
||||
Germany<br />
|
||||
<a href="mailto:jon.eugster@hhu.de">jon.eugster@hhu.de</a>
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</div> : null}
|
||||
</span>
|
||||
)
|
||||
}
|
||||
|
||||
export default PrivacyPolicy
|
||||
@ -1,12 +1,191 @@
|
||||
|
||||
svg .world-circle {
|
||||
/* svg .world-circle {
|
||||
fill: var(--clr-primary)
|
||||
} */
|
||||
|
||||
.welcome {
|
||||
height: 100%;
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.app-content {
|
||||
height: 100%
|
||||
}
|
||||
|
||||
.welcome .column {
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.welcome-text {
|
||||
padding: 20px;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 2em;
|
||||
margin: .67em 0;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 1.5em;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 1.3em;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 1.1em;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
h5, h6 {
|
||||
font-size: 1em;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
/***************/
|
||||
/* SVG Graphic */
|
||||
/***************/
|
||||
|
||||
svg .world-title-wrapper {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
svg .world-title-wrapper div {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
svg .world-title-wrapper div {
|
||||
display: flex;
|
||||
align-items:center;
|
||||
justify-content:center;
|
||||
overflow: visible;
|
||||
|
||||
}
|
||||
|
||||
svg .world-name {
|
||||
fill: white;
|
||||
font-size: 2px;
|
||||
svg .world-title {
|
||||
font-weight: 500;
|
||||
text-anchor: middle;
|
||||
dominant-baseline: middle;
|
||||
color: white;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
/******************/
|
||||
/* Privacy Button */
|
||||
/******************/
|
||||
|
||||
.privacy {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
font-size: 25px;
|
||||
border-radius: 20px;
|
||||
position: absolute;
|
||||
right: 10px;
|
||||
bottom: 10px;
|
||||
display: flex;
|
||||
align-items:center;
|
||||
justify-content:center;
|
||||
color: #aaa;
|
||||
background-color: #eee;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.privacy p {
|
||||
position: absolute;
|
||||
color: #888;
|
||||
bottom: 1.5px;
|
||||
font-size: 6px;
|
||||
}
|
||||
|
||||
.privacy .p1 {
|
||||
transform: rotate(50deg);
|
||||
left: 1.5px;
|
||||
}
|
||||
|
||||
.privacy .p2 {
|
||||
transform: rotate(-50deg);
|
||||
right: 1.5px;
|
||||
}
|
||||
|
||||
/*****************/
|
||||
/* Privacy Popup */
|
||||
/*****************/
|
||||
|
||||
.modal-wrapper {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.modal-backdrop {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
background: rgba(0, 0, 0, 0.25);
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
.modal h2 {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.modal {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
min-width: 50%;
|
||||
max-width: 60ch;
|
||||
background: #fff;
|
||||
z-index: 3;
|
||||
padding: 2em;
|
||||
border-radius: 1em;
|
||||
text-align: left;
|
||||
color: var(--vscode-breadcrumb-foreground);
|
||||
}
|
||||
|
||||
.modal input[type="text"] {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.modal .form-error {
|
||||
color: #a00;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.modal input[type="submit"] {
|
||||
border: none;
|
||||
color: var(--vscode-button-foreground);
|
||||
background: var(--vscode-button-background);
|
||||
cursor: pointer;
|
||||
padding: .5em 1em;
|
||||
border-radius: .2em;
|
||||
display: block;
|
||||
margin: 1em auto;
|
||||
}
|
||||
|
||||
.modal-close {
|
||||
float: right;
|
||||
scale: 2;
|
||||
color: var(--vscode-breadcrumb-foreground);
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.modal-close:hover {
|
||||
float: right;
|
||||
scale: 2;
|
||||
color: var(--vscode-breadcrumb-focusForeground);
|
||||
}
|
||||
|
||||
.modal table {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
@ -0,0 +1,44 @@
|
||||
import Adam.Metadata
|
||||
|
||||
import Adam.Levels.Proposition
|
||||
import Adam.Levels.Implication
|
||||
import Adam.Levels.Predicate
|
||||
import Adam.Levels.Contradiction
|
||||
-- import Adam.Levels.Prime
|
||||
import Adam.Levels.Sum
|
||||
-- import Adam.Levels.Induction
|
||||
|
||||
import Adam.Levels.Numbers
|
||||
import Adam.Levels.Inequality
|
||||
|
||||
import Adam.Levels.Lean
|
||||
import Adam.Levels.SetTheory
|
||||
import Adam.Levels.Function
|
||||
import Adam.Levels.SetFunction
|
||||
import Adam.Levels.LinearAlgebra
|
||||
|
||||
|
||||
|
||||
Game "Adam"
|
||||
Title "Lean 4 game"
|
||||
Introduction
|
||||
"
|
||||
"
|
||||
|
||||
Conclusion
|
||||
"Fertig!"
|
||||
|
||||
|
||||
Path Proposition → Implication → Predicate → Predicate → Contradiction → Sum → Lean
|
||||
Path Predicate → Inequality → Sum
|
||||
-- Path Inequality → Prime
|
||||
-- Path Sum → Inequality -- → Induction
|
||||
|
||||
Path Lean → SetTheory → SetTheory2 → SetFunction → Module
|
||||
Path Lean → Function → SetFunction
|
||||
|
||||
|
||||
Path SetTheory2 → Numbers
|
||||
Path Module → Basis → Module2
|
||||
|
||||
MakeGame
|
||||
@ -0,0 +1,16 @@
|
||||
import Adam.Levels.Contradiction.L01_Have
|
||||
import Adam.Levels.Contradiction.L02_Suffices
|
||||
import Adam.Levels.Contradiction.L03_ByContra
|
||||
import Adam.Levels.Contradiction.L04_ByContra
|
||||
import Adam.Levels.Contradiction.L05_Contrapose
|
||||
import Adam.Levels.Contradiction.L06_Summary
|
||||
|
||||
Game "Adam"
|
||||
World "Contradiction"
|
||||
Title "Widerspruch"
|
||||
|
||||
Introduction "
|
||||
Ihr begebt euch auf die Suche nach *Oddeus*. Nach etwas rumfragen, kommt ihr tatsächlich an
|
||||
eine Dornenfestung und nachdem ihr erklärt habt, wer ihr seit, werdet ihr auf eine Audienz
|
||||
gebeten.
|
||||
"
|
||||
@ -1,13 +1,13 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Std.Tactic.RCases
|
||||
import Mathlib.Tactic.LeftRight
|
||||
import Mathlib.Tactic.Contrapose
|
||||
import Mathlib.Tactic.Use
|
||||
import Mathlib.Tactic.Ring
|
||||
|
||||
import TestGame.ToBePorted
|
||||
import Adam.ToBePorted
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Contradiction"
|
||||
Level 1
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Std.Tactic.RCases
|
||||
import Mathlib.Tactic.LeftRight
|
||||
import Mathlib.Tactic.Contrapose
|
||||
import Mathlib.Tactic.Use
|
||||
import Mathlib.Tactic.Ring
|
||||
|
||||
import TestGame.ToBePorted
|
||||
import Adam.ToBePorted
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Contradiction"
|
||||
Level 2
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Std.Tactic.RCases
|
||||
import Mathlib.Tactic.Contrapose
|
||||
import Mathlib.Tactic.Use
|
||||
import Mathlib.Tactic.Ring
|
||||
|
||||
import TestGame.ToBePorted
|
||||
import Adam.ToBePorted
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Contradiction"
|
||||
Level 5
|
||||
|
||||
@ -1,12 +1,12 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Std.Tactic.RCases
|
||||
import Mathlib.Tactic.Contrapose
|
||||
import Mathlib.Tactic.Use
|
||||
import Mathlib.Tactic.Ring
|
||||
|
||||
import TestGame.ToBePorted
|
||||
import Adam.ToBePorted
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Contradiction"
|
||||
Level 6
|
||||
|
||||
@ -0,0 +1,24 @@
|
||||
import Adam.Levels.Function.L01_Function
|
||||
import Adam.Levels.Function.L02_Let
|
||||
import Adam.Levels.Function.L03_Piecewise
|
||||
import Adam.Levels.Function.L04_Injective
|
||||
import Adam.Levels.Function.L05_Injective
|
||||
import Adam.Levels.Function.L06_Injective
|
||||
import Adam.Levels.Function.L07_Surjective
|
||||
import Adam.Levels.Function.L08_Bijective
|
||||
import Adam.Levels.Function.L09_Inverse
|
||||
import Adam.Levels.Function.L11_Inverse
|
||||
|
||||
Game "Adam"
|
||||
World "Function"
|
||||
Title "Abbildungen"
|
||||
|
||||
Introduction "
|
||||
Auf der Suche nach dem Buch der Urbilder landet ihr auf einem kleinen Mond, der bis auf
|
||||
eine Insel komplett mit Wasser bedeckt zu sein scheint.
|
||||
|
||||
Auf der Insel seht ihr verschiedene große und kleine Behausungen, manche aus Stroh und Holz,
|
||||
vereinzelte aus Lehm.
|
||||
|
||||
Planlos geht ihr zum ersten Haus bei dem jemand vorne außen sitzt.
|
||||
"
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Function"
|
||||
Level 1
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Function"
|
||||
Level 2
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Function"
|
||||
Level 3
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Function"
|
||||
Level 4
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib
|
||||
|
||||
set_option tactic.hygienic false
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Function"
|
||||
Level 5
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Function"
|
||||
Level 6
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Function"
|
||||
Level 7
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Function"
|
||||
Level 9
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Function"
|
||||
Level 10
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
set_option tactic.hygienic false
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Implication"
|
||||
Level 2
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
set_option tactic.hygienic false
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Implication"
|
||||
Level 4
|
||||
|
||||
@ -1,9 +1,11 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
import Init.Data.ToString
|
||||
-- #check List UInt8
|
||||
|
||||
Game "TestGame"
|
||||
set_option tactic.hygienic false
|
||||
|
||||
Game "Adam"
|
||||
World "Implication"
|
||||
Level 7
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
set_option tactic.hygienic false
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Implication"
|
||||
Level 8
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Std.Tactic.RCases
|
||||
import Mathlib.Tactic.Cases
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Implication"
|
||||
Level 9
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Std.Tactic.RCases
|
||||
import Mathlib.Tactic.Cases
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Implication"
|
||||
Level 10
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Std.Tactic.RCases
|
||||
import Mathlib.Tactic.Cases
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Implication"
|
||||
Level 11
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Std.Tactic.RCases
|
||||
import Mathlib.Tactic.Cases
|
||||
import Mathlib.Logic.Basic
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Implication"
|
||||
Level 12
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Std.Tactic.RCases
|
||||
import Mathlib.Tactic.LeftRight
|
||||
import Mathlib
|
||||
|
||||
set_option tactic.hygienic false
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Implication"
|
||||
Level 13
|
||||
|
||||
@ -0,0 +1,5 @@
|
||||
import Adam.Levels.Induction.L01_Induction
|
||||
|
||||
Game "Adam"
|
||||
World "Induction"
|
||||
Title "Übungen Induktions"
|
||||
@ -1,10 +1,10 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
import Mathlib
|
||||
|
||||
set_option tactic.hygienic false
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Induction"
|
||||
Level 1
|
||||
|
||||
@ -0,0 +1,16 @@
|
||||
import Adam.Levels.Inequality.L01_LE
|
||||
import Adam.Levels.Inequality.L02_Pos
|
||||
import Adam.Levels.Inequality.L03_Linarith
|
||||
import Adam.Levels.Inequality.L04_Linarith
|
||||
|
||||
Game "Adam"
|
||||
World "Inequality"
|
||||
Title "Ungleichung"
|
||||
|
||||
Introduction "
|
||||
Später erinnerst du dich gar nicht mehr wo und wann du diese Unterhaltung hattest, geschweige
|
||||
denn mit wem. Vielleicht war es ein Traum, oder eine Erscheinung. Vielleicht war es
|
||||
auch nur eines Abends über einer Runde Getränke.
|
||||
|
||||
Aber auf jedenfall hast du irgendwo gelernt, was du nun weisst.
|
||||
"
|
||||
@ -1,8 +1,8 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Inequality"
|
||||
Level 1
|
||||
|
||||
@ -0,0 +1,26 @@
|
||||
import Adam.Levels.Lean.L01_Type
|
||||
import Adam.Levels.Lean.L02_Universe
|
||||
import Adam.Levels.Lean.L03_ImplicitArguments
|
||||
import Adam.Levels.Lean.L04_InstanceArguments
|
||||
|
||||
Game "Adam"
|
||||
World "Lean"
|
||||
Title "Lean"
|
||||
|
||||
Introduction
|
||||
"Während ihr weiter durch Täler, über Geröllhalden und zwischen monumentalen Steintürmen
|
||||
umherzieht, fragst Du eines Tages Robo.
|
||||
|
||||
**Du**: Sag mal, hast du dir je Gedanken dazu gemacht, wie du eigentlich funktionierts?
|
||||
|
||||
**Robo**: Was meinst du, wie ich funktioniere? Ich bin halt… ich…
|
||||
|
||||
**Du**: Ja schon, aber was woher weisst du denn alles was du weisst?
|
||||
|
||||
**Robo**: Das kann ich dir sagen. Früher habe ich viele Datenträger verschlungen,
|
||||
und dadurch gelernt.
|
||||
|
||||
**Du**: Ob so eine Diskette wohl lecker schmeckt? Egal, ich hab ein paar Fragen zu deinem
|
||||
Lean-Modul.
|
||||
|
||||
**Robo**: Na dann nur zu!"
|
||||
@ -0,0 +1,44 @@
|
||||
import Adam.Metadata
|
||||
|
||||
import Mathlib
|
||||
|
||||
set_option tactic.hygienic false
|
||||
|
||||
Game "Adam"
|
||||
World "Lean"
|
||||
Level 2
|
||||
|
||||
Title "Universen"
|
||||
|
||||
Introduction
|
||||
"**Du**: Aber wenn alles Typen sind, welcher Typ hat dann `Type`?
|
||||
|
||||
**Robo**: `Type 1` und dieser hat Typ `Type 2`, etc.
|
||||
|
||||
**Robo**: Die Zahl nennt man *Universum*. Manchmal führt man Universen explizit
|
||||
mit `universum u` ein, öfter siehst du `(R : Type _)`, was einfach ein Platzhalter
|
||||
für irgend ein Universum ist.
|
||||
|
||||
**Du**: Das klingt ein bisschen nach Mengentheoretische Probleme, die man normalerweise
|
||||
ignoriert.
|
||||
|
||||
**Robo**: Genau! Deshalb schreibt man eigentlich immer einfach `Type _` und ist glücklich.
|
||||
Spezifischer muss man erst werden wenn man sowas wie Kategorientheorie anschaut, wo
|
||||
man die Universen tatsächlich kontrollieren muss.
|
||||
|
||||
**Du**: Oke, hier rein, da raus. Aber hast du mir noch eine Aufgabe?
|
||||
"
|
||||
|
||||
universe u
|
||||
|
||||
Statement
|
||||
(R : Type u) [CommRing R] (a b : R) : a + b = b + a := by
|
||||
Hint "**Robo**: Naja, Aufgaben zu Universen sind nicht so natürlich,
|
||||
aber vorige Aufgabe würde man eigentlich besser so schreiben, da
|
||||
kannst du mindestens das Uniersum beobachten."
|
||||
ring
|
||||
|
||||
Conclusion "**Du**: Na dann. Aber gut dass ich's mal gesehen hab."
|
||||
|
||||
-- Hint (R : Type) (h : CommRing R) (a : R) (b : R) : a + b = b + a =>
|
||||
-- ""
|
||||
@ -1,10 +1,10 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Std.Tactic.RCases
|
||||
import Mathlib.Tactic.LeftRight
|
||||
|
||||
set_option tactic.hygienic false
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Implication"
|
||||
Level 9
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib.Tactic.Ring
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Nat2"
|
||||
Level 3
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib.Tactic.Ring
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Nat2"
|
||||
Level 5
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib
|
||||
|
||||
-- -- INCORPORATED
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib.Tactic.Ring
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Function"
|
||||
Level 1
|
||||
|
||||
@ -0,0 +1,41 @@
|
||||
import Adam.Levels.LinearAlgebra.L01_Module
|
||||
import Adam.Levels.LinearAlgebra.L02_VectorNotation
|
||||
import Adam.Levels.LinearAlgebra.L03_VectorNotation
|
||||
import Adam.Levels.LinearAlgebra.L04_Submodule
|
||||
import Adam.Levels.LinearAlgebra.L05_Submodule
|
||||
import Adam.Levels.LinearAlgebra.L06_Span
|
||||
import Adam.Levels.LinearAlgebra.L07_Span
|
||||
import Adam.Levels.LinearAlgebra.L08_GeneratingSet
|
||||
|
||||
import Adam.Levels.LinearAlgebra.M01_LinearMap
|
||||
import Adam.Levels.LinearAlgebra.M02_LinearIndep
|
||||
import Adam.Levels.LinearAlgebra.M04_Basis
|
||||
|
||||
import Adam.Levels.LinearAlgebra.N01_Span
|
||||
import Adam.Levels.LinearAlgebra.N02_Span
|
||||
import Adam.Levels.LinearAlgebra.N03_Idempotent
|
||||
import Adam.Levels.LinearAlgebra.N04_Idempotent
|
||||
import Adam.Levels.LinearAlgebra.N05_Sum
|
||||
import Adam.Levels.LinearAlgebra.N06_Sum
|
||||
import Adam.Levels.LinearAlgebra.N07_Prod
|
||||
import Adam.Levels.LinearAlgebra.N08_Prod
|
||||
import Adam.Levels.LinearAlgebra.N09_Prod
|
||||
|
||||
Game "Adam"
|
||||
World "Module"
|
||||
Title "Vektorraum"
|
||||
|
||||
Introduction "Hier lernst du die Grundlagen zur linearen Algebra.
|
||||
|
||||
Vektorräume sind in Lean etwas algemeiner definiert als dies normalerweise in
|
||||
einer Einführungsvorlesung antrifft: Man definiert ein \"Modul\" (Plural: Moduln)
|
||||
über einem Ring. Ein Modul über einem *Körper* wird dann auch \"Vektorraum\" genannt.
|
||||
"
|
||||
|
||||
Game "Adam"
|
||||
World "Basis"
|
||||
Title "Lineare Abbildungen"
|
||||
|
||||
Game "Adam"
|
||||
World "Module2"
|
||||
Title "Mehr Vektorräume"
|
||||
@ -1,8 +1,8 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
import Mathlib.Algebra.Module.Submodule.Lattice
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Module"
|
||||
Level 4
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
import Mathlib.Algebra.Module.Submodule.Lattice
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Module"
|
||||
Level 5
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
import Mathlib.Algebra.Module.Submodule.Lattice
|
||||
import Mathlib.Data.Real.Basic
|
||||
import Mathlib.LinearAlgebra.Basic
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Module2"
|
||||
Level 3
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
import Mathlib.Algebra.Module.Submodule.Lattice
|
||||
import Mathlib.Data.Real.Basic
|
||||
import Mathlib.LinearAlgebra.Basic
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Module2"
|
||||
Level 4
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
import Mathlib.Algebra.Module.Submodule.Lattice
|
||||
import Mathlib.LinearAlgebra.Span
|
||||
|
||||
open Submodule
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Module2"
|
||||
Level 5
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
import Mathlib.Algebra.Module.Submodule.Lattice
|
||||
import Mathlib.LinearAlgebra.Span
|
||||
|
||||
open Submodule
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Module2"
|
||||
Level 6
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
import Mathlib.Algebra.Module.Submodule.Lattice
|
||||
import Mathlib.Data.Real.Basic
|
||||
import Mathlib.LinearAlgebra.Span
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Module2"
|
||||
Level 7
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
|
||||
import Mathlib.Algebra.Module.Submodule.Lattice
|
||||
import Mathlib.Data.Real.Basic
|
||||
import Mathlib.LinearAlgebra.Span
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Module2"
|
||||
Level 9
|
||||
|
||||
@ -0,0 +1,2 @@
|
||||
import Adam.Levels.Numbers.L01_PNat
|
||||
import Adam.Levels.Numbers.L02_PNat
|
||||
@ -1,7 +1,7 @@
|
||||
import TestGame.Metadata
|
||||
import Adam.Metadata
|
||||
import Mathlib
|
||||
|
||||
Game "TestGame"
|
||||
Game "Adam"
|
||||
World "Numbers"
|
||||
Level 1
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue