% 3.
\gdef\mujnazevCS{Předmluva}
\gdef\mujnazevEN{Foreword}
\gdef\mujnazevPR{\mujnazevCS}
\gdef\mujnazevDR{\mujnazevEN}
\gdef\mujauthor{Pavel Stříž}

\bonushyper

\nazev{\mujnazevCS}

\nazev{\mujnazevEN}

\bigskip

\hfill \textit{Motto:}

\hfill Ty se zabýváš sudoku? Vždyť to je jen hra pro děti\ldots%

\hfill
Ano, je. Podobně jako šachy, go, origami či tangramy.%
\bigskip

\noindent
Vážené kolegyně, vážení kolegové,\smallskip

\noindent
pamatuji si na svá dětská léta, jako kdyby to bylo včera, kdy jsem si programoval řešitele na osmisměrky. Bádal a~šťoural jsem se v tom, byť už tehdy mi bylo jasné, že vytvořit takovou osmisměrku je trochu jiná a mnohem těžší úloha. Ale kdyby jen to. Po vyškrtání termínů nám zůstanou písmenka, a~z~nich vytvořit smysluplný text programem, to bylo nad mé síly. Technicky tedy kam přidat mezery, případně interpunkci, aby vše dávalo smysl.%
\smallskip

\noindent\hfil
\begingroup
\ttfamily
\begin{tabular}{c}
MNKÍNŠÍČA\\
UAAHULSÁZ\\
RNZHPIAOD\\
AĚOOIVNBA\\
RMNSVOISB\\
SDÍPOVTLT\\
TOVOAISUA\\
TISDTCOHV\\
IKŮAMAHAS\\
\end{tabular}\kern12mm
\begin{tabular}{ll}
VUT & nos\\
hospoda & odměna\\
zásluha & pivo\\
víno & rum\\
šlivovica & svatba\\
hostina & obsluha\\
číšník & \\
\end{tabular}
\endgroup

\noindent\hfil\textit{S pomocí} \url{https://github.com/jamis/wordsearch} \textit{a ručně doladěno.}
\smallskip

Nikdy mi to však neubralo sil hrát si jednoduše s tím, na co mi síly stačily. Ani po letech mě fascinování rekreační matematikou nepřešlo. A se sudoku, jakožto logickou hrou, na tom nejsem jinak. 

Na dalších stránkách najdete mé postřehy a zkušenosti kolem této hry. Volně tím navazuji na mimořádné číslo IB roku 2024, na těchto stránkách zkoumám dál záležitosti, které jsem měl otevřené. Během mého bádání se objevily problémy nové, ale to tak obvykle bývá. Pokusil jsem se jejich zadání formulovat jako otevřené problémy.

Mimořádné číslo jsem se pokusil roztřídit dle bloků:
\begin{itemize}
\itemsep=-1pt
\item generování řešení sudoku, tím se v programování sudoku začíná, nikoliv končí,
\item atypické požadavky kladené na řešení sudoku,
\item výpočet pořadí sudoku a obráceně: zobrazení sudoku po zadání pořadí,
      %ranking-unranking problem,
\item generování zadání dle logických kroků,
\item hrátky se symetriemi čtverce i vlastními,
\item některé zajímavosti kolem sazby sudoku, a,
\item na závěr jsem prošel několik knih.
\end{itemize}

Otázkou vždy zůstává, jestli tento druh her připravovat v ruce, či zda-li a jak využít výpočetní techniku. To nechť čtenáři a případní hráči posoudí sami.%
\bigskip

\noindent
Ve Slavkově u Brna, ???, Vánoce 2025,
\smallskip

\author{\mujauthor}

\Email{pavel@striz.cz}

\endinput




% 1.

hudba: Statistika nuda je,\ldots\ A proto se zabývám kombinatorikou.
Statistika nuda je... proto je tu kombinatorika.

Deep combinatorial questions that as far I know have not yet been exposed.
   Martin Gardner
   Mathematical Games
   
The group theory is the best thing in mathematics. There, I said it!
  Sarah Hart, The mathematics of musical composition.
  
  
Motto: Nula je zlatý důl, z nuly obratem získáme jednu možnost $0!=1$, a s tím se už dá pracovat.


Invisible book of bridge hands

enumeration, counting 
listing
ranking-unranking


Princip metody, sčítání, násobení 2*3*5
  factoradics (faktoriál), combinadics (kombinační číslo)
  https://en.wikipedia.org/wiki/Stars_and_bars_(combinatorics)
kolik**kolikrát

Trik, jak se vyhnout v kombinačních číslech dělení?
  příklad u: 6670903752021072936960/1881169920

Softwarový koutek:
Vyzkoušet si Knuthovy věci, Cweb, GraphBase.
Vyzkoušet si http://combos.org/part
database of partition/sequences?
https://math.depaul.edu/bridget/patterns.html


Pexeso

Bridž
  princip tam a zpět


Go
Mozaika
Žolík
  -- žolík jako typ karty
  -- žolík hned nahrazen chtěnou kartou
? Programátorská výzva: najít možnosti složení karet, žolík-bot
Otevřený problém: dva a víc hráčů.
Otevřený problém: Mah Jongg, žolíky mohou být jen za některé karty, nikoliv libovolnou

Šachy
počet možností: nula až 32 figurek na šachovnici
otevřený problém, lze mít víc figurek v políčku, nezáleží na pořadí
otevřený problém, lze mít víc figurek v políčku, záleží na něm
  bez zkoumání v symetriích, nadpozemská čísla
+ každá z nich může být otočená i hlavou vzhůru

Rotace a překlápění
https://www.youtube.com/watch?v=5cN78GEZr6s

Otevřený problém: Spider Solitaire (???)
Otevřený problém u Spidera

Bonus: karetní hra válka, ?

Bonus: Domino kostky,\par
  simulace hraní, Dominoes/Muggins/Mexican Train Dominoes\par
  Chickenfoot\par
  ty Tile sety s více symboly v okénku (??)\par
2D srdíčko
2D dominovník
3D domino :-)

% https://ksvi.mff.cuni.cz/~dingle/teaching_old.html
% https://ksvi.mff.cuni.cz/~dingle/2022-3/prog_2/notes_7.html

% https://stackoverflow.com/questions/67151242/picat-functions-in-constraints
% kombinadika
% faktoradika

% primitivní funkce -> primitiv
% LaTeX vs latek oblečení
% factoradic(t)s
% Céčkař, python...

% (n!)!
% n!!, n!!!, n!!!!
% https://math.libretexts.org/Bookshelves/Combinatorics_and_Discrete_Mathematics

Pájo, to šlo mnohem jednodušeji...
Šachové figurky jdou do Nebe!
otevřený problém, jedna figurka zabere víc políček, 1--4
"Hra s vyhazováním", vrstvení, vyhození figurky o úroveň níž
  počet možností, 421, Jaj číslo, 421 na soustava ;-)
  každá figurka si volí konkrétní jeden typ
Kombinatorická jednosměrka, propadávající figurky, černá díra kombinatoriky

% https://stackoverflow.com/questions/31032582/fast-way-of-generating-combinations-with-constraints

% https://oeis.org/wiki/Ranking_and_unranking_functions

catalan
dearrangement, desmutace
zdroj: arndt

https://www.sciencedirect.com/science/article/abs/pii/S002001902200045X

http://www2.denizyuret.com/bib/kreher/donald1999combinatorial/combinatorialA.pdf
shakiari

vitamín B (binární ILP)

https://oeis.org/search?q=1+4+10+20+35+56+84+120+165+220+286&go=Search
a(n) is the number of binary strings of length n+2 with exactly three 0's. - Enrique Navarrete, Jan 15 2021

0 o, 1 i, 2 z, 3 e, 4, 5, 6, 7, 8, 9
https://simple.wikipedia.org/wiki/Leet

0 = O or space
1 = I or L or 7 or | or !
2 = Z
3 = E or e or m or w or ω or ∈ or ε or ∩∩
4 = h or A or y
5 = S
6 = b or G
7 = T or K
8 = B or X
9 = g or J or P

Motto:
Dítě školou povinné: To určitě půjde, ale ono to nejde.
Středoškolák: To možná půjde, ale ono to nejde.
Vysokoškolák: To asi nepůjde, ono to skutečně nejde.
Až po škole: No, to určitě nepůjde, ale nakonec to jede.

Vtip. Proč se nevysypete rovnoměrně? O mincích.

Otevřený problém: puzzle, kolik změn musí být minimálně na hranách, aby dílky byly rozdílné.




---- 2.
Rozebral jsem ji na šroubky (škrt) kostičky a skládám ji zpět.

Rozházení/scrabble neznamená nutně rovnoměrné generování Rubikových kostek.

Rubikova kostka, tam a zpět
%Otevřený problém: u Rubikovy kostky

Rubikova kostka\par
  Otevřený problém? Hamilton: soubor, juknout. https://bruce.cubing.net/index.html
  kontrola platnosti Rubikovy kostky
  ! generování obecné velikosti
  ! princip zamalování a dopočet kombinací, nápad z vlajek z Rubikovy kostky, na webu mají všechny neplatné.

Picat
  úvod
  chybové hlášky
  spuštění vícekrát optimalizaci, už umím.



error(free_var_not_allowed
-- V modelu je užita proměnná, která není na něj skutečně navázána.

error(invalid_constraint_exp,
-- Pokud se pokusíme užít #=, kde to nelze.

*** SYNTAX ERROR *** (3-185) missing ',', ';', or some other operator.
-- Chybějící znak na konci příkazu.

*** error(syntax_error,picat)
-- Např. užití # jako poznámky, na to je znak %.

** Error  : Free variable in expression: '-'
-- Proměnná obsahuje znak mínus, to je nepřípustné.

*** error(invalid_argument(r11),::)
-- Proměnná nesmí začínat malým písmenkem.

*** SYNTAX ERROR *** (1-24) wrong module name.
-- Když se pokusíme import modulu ukončit třeba čárkou.

Pokud se vám ve výpisu objeví něco typu _3d087a8, tak je to proměnná bez hodnoty, jen její umístění v paměti.

*** SYNTAX ERROR *** (3-26) primary expression expected before '.'.
Celý program není ukončen tečkou, ale třeba čárkou. Očekává pokračování.

*** error(failed,main/0)
To se mi například podařilo, když jsem chtěl spustit optimalizace vícekrát, ale výsledek uložit do stejné proměnné.




inspirace, obr.
https://www.walmart.com/ip/Rubik-s-Impossible-Puzzle/5347596510

Rubikovy-Čertovy kostky,\par
  jedna stěna\par
     -- generováním tří zaráz, pozor na problém okrajů\par
Rubikova kostka, nejtěžší partie
  napojování, princip v Picatu
    -- SAT, jedna stěna\par
    -- SAT, obě stěny

-- Systém pravidel\par
-- ?Generování jako rekurze v sudoku?

Mechanika v Rubikově-Čertově zdi (lze?), symbolický obrázek ozubených kol
O Rubikově hvězdné mechanice, Hvězdná mechanika Rubikových kostek:
Rubik byl architekt, určitě chtěl z dílků něco stavět. ;-)
Obyč Rubik:
  Mechanika ve 2D mřížce
  Mechanika ve 3D mřížce


Otevřený problém: 
-- Videjko na youtube, https://www.youtube.com/watch?v=FV5ReD-qKT4
   https://www.youtube.com/watch?v=VTMD9rD2iYg
-- Email od Hartmánka... z Žiliny. sudoku cube, SudoKube, autor Jay Horowitz
-- O co jde? https://zig.news/shadeops/zig-and-the-zigzaw-413n

lze kostky spojit do 2D a 3D mřížky, aby nálepky dotykaných se částí měly stejnou barvu? Hypotéza: Ve 2D ano, ve 3D ano.
-- ??? https://www.youtube.com/watch?v=Dq4z--4pVFY

Recenze knih:\par
  Kniha Picat\par
  Bosch: Opt Art



