%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%    Stílusallomány																 %%
%%    T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein							 %%
%%    Introduction to Algorithms	 	   		   	  								 %%
%%    című könyvének szerkesztéséhez												 %%             
%%    2003. február 20.																 %%
%%    Alap: Csörnyei Zoltán/Algoritmusok és Belényesi Viktor/Osztott algoritmusok	 %%						   
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{algsec}[2003/02/20]

\RequirePackage[latin2]{inputenc}
\RequirePackage{ifthen}
\RequirePackage{amsmath}
\RequirePackage{amssymb}
\RequirePackage{calc}
\RequirePackage{t1enc}
\RequirePackage[dvips]{graphicx}
\RequirePackage{makeidx}
\RequirePackage{multicol}
\RequirePackage{color}
%%
%% XFIG-GEL RAJZOLT ÁBRÁKHOZ SZÜKSÉGES CSOMAGOK
%%
\RequirePackage{graphics}
\RequirePackage{epic}
%\RequirePackage{eepic}

%% HIPERLINKEKHEZ KITERJESZTETT HIVATKOZÁSOKHOZ SZÜKSÉGES CSOMAGOK
%%
\RequirePackage{xr}
\RequirePackage[bookmarksnumbered,colorlinks,plainpages,backref=false,pagebackref=true]{hyperref}
\RequirePackage{epsf}
\epsfclipon 


\def\@xpt{10.95}\def\@xipt{12}
\def\@xviiipt{18}
\DeclareMathSizes{\@xpt}{\@xpt}{8}{6}
\DeclareMathSizes{\@xipt}{\@xipt}{9}{7}
\DeclareMathSizes{\@xviiipt}{\@xviiipt}{\@xivpt}{\@xpt}


%    Using 17.28 here instead of 18 is the easiest way to avoid font
%    warnings about substitution of nearest accessible size.
\def\@xviiipt{17.28}%
\def\@xpt{10}\def\@xipt{10.95}%
\let\font@setup\relax

%%
%% ALGORITMUS (2002.02.16.)
%%
\newcommand{\alge}{%
\begin{tabbing}%
99 \= xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \+ \kill 
}
\newcommand{\algv}{%
\end{tabbing}
}
\newenvironment{alg}[1]{%
\vspace{5 mm}\vbox\bgroup\noindent\textsc{#1}%
\alge}{\algv\egroup}

%%
%% GYAKORLATOK
%%
\newcounter{cszx}
\newenvironment{gyak}{\section*{Gyakorlatok}%
\setcounter{cszx}{0}}{}
\def\ujgyak{\refstepcounter{cszx}\medbreak\noindent%
\textbf{\thechapter.\@arabic\c@section-\thecszx.}\ }%
\def\hardgyak{\refstepcounter{cszx}\medbreak\noindent%
\textbf{\thechapter.\@arabic\c@section-\thecszx.$*$}\ }%

%%
%% FELADATOK
%%
\newcounter{cszy}
\newenvironment{fld}{\section*{Feladatok}%
\setcounter{cszy}{0}
     { \markright {%
        \ifnum \c@secnumdepth >\z@
           \thechapter.\ \ % 
       \fi
        Feladatok}}}{}
\def\ujfld#1{\refstepcounter{cszy}\medbreak\noindent%
\textbf{\textsl{\thechapter-\thecszy.\ {#1}}}\par\noindent\ignorespaces}
%%
\renewenvironment{description}
               {\list{}{\setlength\leftmargin{15pt}
                        \labelwidth\z@ \itemindent-\leftmargin
                        \let\makelabel\descriptionlabel}}
               {\endlist}
%%
%% FEJEZET MEGJEGYZES
%%
\newenvironment{fejmegj}{\section*{Megjegyz\'esek a fejezethez}
     { \markright {%
        \ifnum \c@secnumdepth >\z@
           \thechapter.\ \ % 
       \fi
        Megjegyz\'esek a fejezethez}}}{}




%%
%% KÉK SZÍNŰEK LEGYENEK A HIPERHIVATKOZÁSOK
%%
\def\@linkcolor{blue}
\def\@anchorcolor{blue}
\def\@citecolor{blue}
\def\@filecolor{blue}
\def\@urlcolor{blue}
\def\@menucolor{blue}
\def\@pagecolor{blue}

%%
%% MAGYAR ELNEVEZÉSEK
%%
\newcommand{\prefacename}{Előszó}%
\renewcommand{\bibname}{Irodalomjegyzék}%
\renewcommand{\chaptername}{Fejezet}%
\renewcommand{\contentsname}{Tartalomjegyzék}%
\renewcommand{\indexname}{Tárgymutató}%
\newcommand{\nevindexname}{Névmutató}%
\renewcommand{\figurename}{ábra}%
\renewcommand{\tablename}{táblázat}%
\renewcommand{\partname}{rész}%
\newcommand{\enclname}{Melléklet}%
\newcommand{\pagename}{oldal}%
\renewcommand{\seename}{Lásd}%
\renewcommand{\alsoname}{Lásd még}%
\newcommand{\proofname}{bizonyítás}%

%%
%% DEFÍNÍCIÓ DŐLT OLDALSZÁMMAL A TÁRGYMUTATÓBAN
%%
\newcommand{\inddef}[1]{\index{#1|textit}}

%%
%% PARANCSOK A KIS RÖVIDÍTÉSHEZ A TÁRGYMUTATÓBAN (2003.02.15.)
%% 
\newcommand{\gyakindex}[1]{\index{#1|gyak}}
\newcommand{\abraindex}[1]{\index{#1|abra}} 
\newcommand{\felindex}[1]{\index{#1|fel}} 
\newcommand{\labindex}[1]{\index{#1|lab}} 
%% MILYEN MÉRETBEN ÍRJÁK KI
\def\style{\footnotesize}
%% MIT ÍRJANAK KI 
\def\gyakkiir{{\style gy}}  
\def\abrakiir{{\style áb}}
\def\felkiir{{\style fe}}
\def\labkiir{{\style lá}}
%% AZ OLDALSZÁMTÓL MILYEN TÁVOL ÍRJÁK KI
\def\jeltav{\hspace*{1mm}} 
 

%%
%% eps KÉP BESZÚRÁSA 
%%
\newcommand{\epskep}[2]{
\begin{figure}[htb!]
  \begin{center}
    \epsffile{#1.eps}
  \end{center}
\vspace*{-4mm}
 \caption{#2}
\vspace*{-4mm}
  %#4
\end{figure}
}

%%
%% eepic KÉP BESZÚRÁSA
%%
\newcommand{\eepickep}[2]{
\begin{figure}[htb!]
 \begin{center}
    \input{#1.eepic}
  \end{center}
\vspace*{-4mm}
   \caption{#2}
\vspace*{-4mm}
\end{figure}
}


%%
%% MÉRETEK BEÁLLÍTÁSA 
%%
\setlength\textwidth{125mm}
\setlength\textheight{188mm}
\setlength\evensidemargin{18mm}
\setlength\oddsidemargin{18mm}
\newcommand{\betumeret}{\Large}   %% betűméret a tárgymutatóban
\newlength{\targytav}
\setlength{\targytav}{5mm}        %% távolság a tárgymutatóban
\newdimen\mathindent
\setlength{\mathindent}{0mm}

%%
%% MONDATKÖZÖK BEÁLLÍTÁSA
%%
\frenchspacing

%%
%% SZÁMLÁLÓK, HOSSZOK, DOBOZOK
%% 	
\newcounter{examp}
\newcounter{allcount}

\newcounter{protcount}
\newcounter{eljcount}

\newsavebox{\ujdb}
\newsavebox{\iroddoboz}
\newlength{\temp}

%%
%% BEKEZDÉSEK KÖZTI TÁVOLSÁG
%%
\renewcommand{\\}{\protect\vspace{1 pt plus 1pt minus 1pt}\newline\relax}
\setlength{\parskip}{3pt} %% Bekezdések közötti távolság
\renewcommand{\baselinestretch}{0.92} %% Sorritkító: 1=20%-os sorritkítás, 0.96=15%, 0.92=10%
\renewcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}%
                                    {1.25ex \@plus1ex \@minus.2ex}  %% Paragraph által okozott ugrás
                                    {-0.2em}%
                                    {\normalfont\normalsize\bfseries}}
									
%%
%% SZÖVEGKIEMELÉSEK
%%
\newcommand{\ki}[1]{\textbf{\textsl{#1}}}
\newcommand{\key}[1]{\textbf{#1}}
\newcommand{\idez}[1]{{\ideze}#1''}
\newcommand{\ideze}{\setbox0=\hbox{\lower1.38ex\hbox{''}}\dp0=0pt\box0}

%%
%% LISTÁK TÖMÖRÍTÉSE
%%
\def\enumhook{}
\def\enumhooki{}
\def\enumhookii{}
\def\enumhookiii{}
\def\enumhookiv{}
\def\itemhook{}
\def\itemhooki{}
\def\itemhookii{}
\def\itemhookiii{}
\def\itemhookiv{}
\def\descripthook{}

\def\enumerate{%
\vspace*{-1mm}   %% első köz
  \ifnum \@enumdepth >\thr@@\@toodeep\else
    \advance\@enumdepth\@ne
    \edef\@enumctr{enum\romannumeral\the\@enumdepth}%
      \expandafter
      \list
        \csname label\@enumctr\endcsname
        {\usecounter\@enumctr\def\makelabel##1{\hss\llap{##1}}%
          \enumhook \csname enumhook\romannumeral\the\@enumdepth\endcsname}%
  \fi\vspace*{2mm} %%  hátsó köz
  }
  
\def\itemize{%
\vspace*{-2mm}  %% első köz
  \ifnum \@itemdepth >\thr@@\@toodeep\else
    \advance\@itemdepth\@ne
    \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
    \expandafter
    \list
      \csname\@itemitem\endcsname
      {\def\makelabel##1{\hss\llap{##1}}%
        \itemhook \csname itemhook\romannumeral\the\@itemdepth\endcsname}%
  \fi
  \vspace*{1mm} %hátsó köz
  }
  
\renewenvironment{description}
                 {
				 \vspace*{-0mm} %első köz
				 \list{}{\labelwidth\z@ \itemindent-\leftmargin
                          \let\makelabel\descriptionlabel\descripthook}}
                 {\endlist
				 \vspace*{5mm} %% hátsó köz
				 }
				 
%%
%% LISTÁK TÖMÖRÍTÉSE (belső köz)
%%
%% ENUMERATE belső közei
\renewcommand{\enumhook}{\setlength{\topsep}{0pt}   \setlength{\itemsep}{-1pt}}
  
%% DESCRIPTION belső közei  
\renewcommand{\descripthook}{\setlength{\topsep}{0pt} \setlength{\itemsep}{-1pt}}
  
%% ITEMIZE belső közei  
\renewcommand{\itemhook}{\setlength{\topsep}{0pt}  \setlength{\itemsep}{-1pt}}



\renewcommand{\\}{\protect\vspace{1 pt plus 1pt minus 1pt}\newline\relax}
\setlength{\parskip}{0.4pt} %%Bekezdések közötti távolság
\renewcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}%
                                    {1.25ex \@plus1ex \@minus.2ex}  %% Paragraph által okozott ugrás
                                    {-0.2em}%
                                    {\normalfont\normalsize\bfseries}}


%%
%% ITEMIZE ujra by bvic
%%
\renewenvironment{itemize}{%

  \ifnum\@itemdepth>3 \@toodeep
  \else \advance\@itemdepth\@ne
    \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}%
    \list{\csname\@itemitem\endcsname}%
      {\def\makelabel##1{\hss\llap{\upshape##1}}}%
  \fi
  \addtolength{\itemsep}{-0.1 cm} %Itt lehet szabályozni a felsorolás távolságát.
}{%
  \endlist
}
\let\enditemize=\endlist % for efficiency

%%
%% FEJEZET, ALFEJEZET SZÁMLÁLÓK BEÁLLÍTÁSA
%%
\setcounter{chapter}{-1}
\setcounter{secnumdepth}{4}


%%
%%  PART ÚJRADEFINIÁLÁSA
%% 
\def\@part[#1]#2{%
        \ifnum \c@secnumdepth >-2\relax
          \refstepcounter{part}%
          \addcontentsline{toc}{part}{\thepart.\hspace{1em}#1}%
        \else
          \addcontentsline{toc}{part}{#1}%
        \fi
        \markboth{}{}%
        {\centering
         \interlinepenalty \@M
         \normalfont
         \ifnum \c@secnumdepth >-2\relax
           \huge\bfseries \thepart.~\partname
           \csname par\endcsname
           \vskip 20\p@
         \fi
         \Huge \bfseries #2\csname par\endcsname}%
        \@endpart}

    
%%
%%  CHAPTER ÚJRADEFINIÁLÁSA
%%
\def\cleardoublepage{\clearpage\thispagestyle{empty}\if@twoside \ifodd\c@page\else
    \hbox{}\thispagestyle{empty}\newpage\thispagestyle{empty}\if@twocolumn\hbox{}\newpage\fi\fi\fi}



\def\chapter{    
	\if@openright{\cleardoublepage}\else\clearpage\fi
	%
	\global\@topnum\z@
	\@afterindentfalse
	\secdef\@chapter\@schapter}

\def\@chapter[#1]#2{\ifnum \c@secnumdepth >\m@ne
                           \if@mainmatter
                             \refstepcounter{chapter}%
                             \typeout{\thechapter.\space\@chapapp.}%
                             \addcontentsline{toc}{chapter}%
                                       {\protect\numberline{\thechapter.}#1}%
                           \else
                             \addcontentsline{toc}{chapter}{#1}%
                           \fi
                        \else
                          \addcontentsline{toc}{chapter}{#1}%
                        \fi
                        \chaptermark{#1}%
                        \addtocontents{lof}{\protect\addvspace{10\p@}}%
                        \addtocontents{lot}{\protect\addvspace{10\p@}}%
                        \if@twocolumn
                          \@topnewpage[\@makechapterhead{#2}]%
                        \else
                          \@makechapterhead{#2}%
                          \@afterheading
                        \fi}


\renewcommand{\@makechapterhead}[1]{%

  \vspace*{56\p@}%
  {\parindent \z@ \raggedright \normalfont
    \interlinepenalty\@M
    \huge \bfseries \thechapter.\ #1\par\nobreak
    \vskip 12\p@%  egy ures sor
  }}

  
\newcommand{\csapter}[1]{%
	\if@openright{\cleardoublepage}\else\clearpage\fi
	%
	\global\@topnum\z@
	\@afterindentfalse
  \vspace*{50\p@}%
  {\parindent \z@ \raggedright
    \normalfont
    \interlinepenalty\@M
    \Huge \bfseries  #1\par\nobreak
    \vskip 40\p@
   }}
  
  
\def\@schapter#1{
				 \@mkboth{#1}{#1}
				 
				 \if@twocolumn

                   \@topnewpage[\@makeschapterhead{#1}]%
                 \else
                   \@makeschapterhead{#1}%
                   \@afterheading
                 \fi}


\def\@makeschapterhead#1{%
  \vspace*{50\p@}%
  {\parindent \z@ \raggedright
    \normalfont
    \interlinepenalty\@M
    \Huge \bfseries  #1\par\nobreak
    \vskip 40\p@
  }}
   
%%
%% FEJLÉC
%%
\renewcommand{\@oddhead}{\vbox{\makebox[\textwidth][l]{\hbox {}{\sl \rightmark}\hfill%
      \rm\thepage\hbox {}}
        \vss\vskip 2pt \makebox[\textwidth][l]{\hrulefill}
  }}
\renewcommand{\@evenhead}{\vbox{\makebox[\textwidth][l]{\rm\thepage\hfill{\sl \leftmark}%
    \hbox {}}\vss \vskip 2pt \makebox[\textwidth][l]{\hrulefill}}}
	

%%
%% MINDEN ÚJ FEJEZETNÉL VÉGREHAJTANDÓ PARANCSOK
%%
\renewcommand{\chaptermark}[1]{%
	  \setcounter{protcount}{0}

      \markboth {%
        \ifnum \c@secnumdepth >\m@ne
          \if@mainmatter
              \thechapter.\ \ %
          \fi
        \fi
      #1}{} \thispagestyle{empty}
}

\renewcommand{\sectionmark}[1]{%
	  \setcounter{examp}{0}
	  \setcounter{allcount}{0}
  
      \markright{%
        \ifnum \c@secnumdepth >\z@
           \thesection.\ \ %
       \fi
        #1}
}

%%
%% TÉTEL, DEFINÍCIÓ, ...
%%

\newcommand{\pref}[1]{\ref{#1}.}

\newtheorem{tetel}{tétel}[chapter]
\newtheorem{lemma}[tetel]{lemma}
\newtheorem{segedtet}[tetel]{segédtétel}

\newtheorem{defi}[tetel]{definíció}
\newtheorem{kov}[tetel]{következmény}
\newtheorem{sejtes}[tetel]{sejtés}
\newtheorem{megj}[tetel]{megjegyzés}


%%
%% KOCKA, PIKK, TREFF
%%
\newcommand{\fkocka}{\nobreak\hspace*{\fill}\nobreak$\blacksquare$\par\smallskip}
\newcommand{\kor}{\nobreak\hspace*{\fill}\nobreak$\heartsuit$\par\smallskip}
\newcommand{\pikk}{\nobreak\hspace*{\fill}\nobreak$\spadesuit$\par\smallskip}
\newcommand{\treff}{\nobreak\hspace*{\fill}\nobreak$\clubsuit$\par\smallskip}

%%
%% BIZONYITÁS FEKETE KOCKÁVAL A VÉGÉN
%%
\newenvironment{biz}[1][]{
\par\noindent{\textbf{Bizonyítás.}}\textbf{#1}
}
{
\fkocka
}

%%
%% BIZONYITÁS PIKKEL A VÉGÉN
%%
\newenvironment{bizpikk}[1][]{
\par\noindent{\textbf{Bizonyítás.}}\textbf{#1}
}
{
\pikk
}

%%
%% EGY SZÁMOZOTT SORT ELŐÁLLÍTÓ PARANCS
%%

\newcommand{\itelj}{ 
	\stepcounter{eljcount}
	\ifthenelse{\value{eljcount}<10}{\textrm{0\theeljcount\ }}{\textrm{\theeljcount\ }}
}

%%
%% ELJÁRÁS
%%
\newenvironment{elj}[6]
{
\vspace*{2mm}  %%köz előtte
\setcounter{eljcount}{0}
\par\noindent\textsc{#1}(#2)\hfill\textit{#3}\\
\noindent\textit{Számítási modell}:\ #4\\
\noindent\textit{Bemenet}:\ #5\\
\noindent\textit{Kimenet}:\ #6
\begin{tabbing}
\hspace{7mm} \= \hspace{4mm} \= \hspace{4mm} \= \hspace{4mm} \= \hspace{4mm} \= \hspace{4mm} \= \hspace{4mm}
\= \hspace{4mm} \= \kill
}
{
\end{tabbing}
\vspace*{0mm}  %%köz utána
}

%%
%% ÚJ OLDAL AZ ELJÁRÁSBAN
%%
\def\eljnewpage
{
\end{tabbing}
\newpage
\begin{tabbing}
\hspace{7mm} \= \hspace{4mm} \= \hspace{4mm} \= \hspace{4mm} \= \hspace{4mm} \= \hspace{4mm} \= \hspace{4mm}
\= \hspace{4mm} \= \kill
}
			   
%%
%% ÁBRA (2003.03.16.)
%%
\def\fnum@table{\thetable.~\tablename}

\renewcommand{\thefigure}
     {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@figure}
	 
\def\fnum@figure{\thefigure.~\figurename}

\long\def\@makecaption#1#2{%
  \vskip\abovecaptionskip
  \sbox\@tempboxa{\textbf{#1.} {#2}}%
  \ifdim \wd\@tempboxa >\hsize
    {\textbf{#1.}} {#2}\par
  \else
    \global \@minipagefalse
    \hb@xt@\hsize{\box\@tempboxa\hfil}%
  \fi
  \vskip\belowcaptionskip
}
  
%%
%% IRODALOMJEGYZÉK
%%
\renewenvironment{thebibliography}[1]
     {\chapter*{\bibname}
      \markboth{\bibname}{\bibname}%

	
      \list{\@biblabel{\@arabic\c@enumiv}}%
           {\settowidth\labelwidth{\@biblabel{#1}}%
		    \addtolength{\itemsep}{-2.7mm}
			\leftmargin\labelwidth
            \advance\leftmargin\labelsep
            \@openbib@code
            \usecounter{enumiv}%
            \let\p@enumiv\@empty
            \renewcommand\theenumiv{\@arabic\c@enumiv}}%
      \sloppy
      \clubpenalty4000
      \@clubpenalty \clubpenalty
      \widowpenalty4000%
      \sfcode`\.\@m
}
{\def\@noitemerr{\@latex@warning{Empty `thebibliography' environment}}%
\endlist
\usebox{\iroddoboz}
}

\newcommand{\irodoutro}[1]{
\sbox{\iroddoboz}{
\begin{minipage}{\textwidth}
#1
\end{minipage}
}
}


\renewenvironment{theindex}
{


 \begin{multicols}{2}
 \parindent\z@
 \parskip\z@ \@plus .3\p@\relax
 \let\item\@idxitem
}
{
\end{multicols}
\if@restonecol\onecolumn\else\clearpage\fi
}

%%
%%	PÉLDA PIKKEL A VÉGÉN
%%
\newenvironment{pelda}[1]{
\stepcounter{tetel}
\vspace{7mm}
\noindent\textbf{\thetetel.} \textbf{példa. }\textbf{#1}
\vspace{0mm}
}
{
\pikk
}

%%
%% TARTALOMJEGYZÉK ÁTALAKÍTÁSA
%%

\renewcommand{\l@chapter}[2]{%
  \ifnum \c@tocdepth >\m@ne
    \addpenalty{-\@highpenalty}%
    \vskip 1em \@plus\p@ %% itt lehet szabályozni a chapter előtti szóközt
    \setlength\@tempdima{1.5em}%
    \begingroup
      \parindent \z@ \rightskip \@pnumwidth
      \parfillskip -\@pnumwidth
      \leavevmode \bfseries
      \advance\leftskip\@tempdima
      \hskip -\leftskip
      #1\nobreak\pontok \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
      \penalty\@highpenalty
    \endgroup
  \fi}
  
\newcommand{\pontok}{
{\normalfont
\nobreak
\leaders\hbox{$\m@th
        \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
        mu$}\hfill
\nobreak
}
}

\renewcommand\tableofcontents{%
    \if@twocolumn
      \@restonecoltrue\onecolumn
    \else
      \@restonecolfalse
    \fi
	
	 \csapter{\contentsname\thispagestyle{empty}\@mkboth{\contentsname}{\contentsname}}

    \@starttoc{toc}%
    \if@restonecol\twocolumn\fi

   }
%%
%% ALÁHÚZÓS href
%%
\newcommand{\hrefun}[2]{\href{#1}{\underline{#2}}}

%%  
%% ÁLLÓ SZÖVEG ÁLLÍTÁSBAN
%%
\newcommand{\allo}[1]{\textrm{#1}}

%%
%%	SEE ÚJRA
%%
\renewcommand{\see}[2]{\emph{lásd} #1}
\newcommand{\lmeg}[2]{\emph{lásd még} #1}

%%
%% TERMÉSZETES ÉS VALÓS SZÁMOK
%%
\newcommand{\N}{\mathbb{N}}
\newcommand{\R}{\mathbb{R}}

%% VÁLTOZÓ
%%
\newcommand{\var}[1]{\textit{#1}}

%% SZÁMÍTÁSI MODELL NEVE ÁLLÍTÁSBAN
%%
\newcommand{\modell}[1]{\textrm{#1}}

%%
%% MŰVELETEK NEVE SZÖVEGBEN
%%
\newcommand{\muv}[1]{\mbox{\texttt{#1}}}
\newcommand{\act}[1]{\mbox{\texttt{#1}}}

%%
%% MŰVELETEK NEVE ÁLLÍTÁSOKBAN
%%
\newcommand{\muvall}[1]{{\normalfont \texttt{#1}}}

%%
%% Tételek
%%
\renewcommand{\@begintheorem}[2]{\trivlist
   \item[\hskip \labelsep{\bfseries #2.~#1.\ }]\itshape\hspace{-0.5em}}
   
\renewcommand{\@opargbegintheorem}[3]{\trivlist
      \item[\hskip \labelsep{\bfseries #2.~#1.\ (#3)}]\itshape\hspace{-0.5em}}

%%
%% TÁRGY és NÉVMUTATÓ 2002.01.10.
%%

\def\makeindexs#1{\begingroup
  \makeatletter
  \if@filesw \expandafter\newwrite\csname #1@idxfile\endcsname
  \expandafter\immediate\openout \csname #1@idxfile\endcsname #1.idx\relax
  \typeout{Writing index file #1.idx }\fi \endgroup}

\def\indexs#1{\@bsphack\begingroup
               \def\protect##1{\string##1\space}\@sanitize
               \@wrindexs{#1}}

\def\@wrindexs#1#2{\let\thepage\relax
   \xdef\@gtempa{\@ifundefined{#1@idxfile}{}{\expandafter
      \write\csname #1@idxfile\endcsname{\string
      \indexentry{#2}{\thepage}}}}\endgroup\@gtempa
   \if@nobreak \ifvmode\nobreak\fi\fi\@esphack}


\renewenvironment{printindex}
{
 \if@twocolumn
 \@restonecolfalse
 \else
 \@restonecoltrue
 \fi
				
 \columnseprule \z@
 \columnsep 28\p@
 		
 \csapter{\indexname\thispagestyle{empty} \addcontentsline{toc}{chapter}{\indexname}\@mkboth{\indexname}{\indexname}}
}
{
 \hspace*{-\parindent}\hspace*{-0.3em}		
 \setlength{\columnwidth}{(\textwidth-\columnsep)/2}
 \setlength{\itemindent}{0pt}
 \renewcommand{\indexspace}{\par\vskip 4\p@ \@plus 5\p@ \@minus 3\p@ \relax}
 \renewcommand\@idxitem  {\par\hangindent 0\p@}
 \@input{\jobname.ind}
}

\newenvironment{printnevindex}
{
 \if@twocolumn
 \@restonecolfalse
 \else
 \@restonecoltrue 
 \fi
				
 \columnseprule \z@
 \columnsep 28\p@
 		
 \csapter{\nevindexname\thispagestyle{empty}\addcontentsline{toc}{chapter}{\nevindexname}} \@mkboth{\nevindexname}{\nevindexname}
		
}
{
 \hspace*{-\parindent}\hspace*{-0.3em}		
 \setlength{\columnwidth}{(\textwidth-\columnsep)/2}
 \setlength{\itemindent}{0pt}
 \renewcommand{\indexspace}{\par\vskip 4\p@ \@plus 5\p@ \@minus 3\p@ \relax}
 \renewcommand\@idxitem  {\par\hangindent 0\p@}
 \@input{\jobname_nev.ind}
}

\renewcommand{\makeindex}{\makeindexs{\jobname}\makeindexs{\jobname_nev}}
\renewcommand{\index}[1]{\indexs{\jobname}{#1}}
\newcommand{\nevindex}[1]{\indexs{\jobname_nev}{#1}}


%%
%% MAGYARSÁG
%%

\long\def\@caption#1[#2]#3{%
    \csname par\endcsname
    \addcontentsline{\csname ext@#1\endcsname}{#1}%
      {\protect\numberline{\csname the#1\endcsname.}{\ignorespaces #2}}%
    \begingroup
      \@parboxrestore
      \if@minipage
        \@setminipage
      \fi
      \normalsize
      \@makecaption{\csname fnum@#1\endcsname}{\ignorespaces #3}\csname par\endcsname
    \endgroup}


\def\@seccntformat#1{\csname the#1\endcsname.\quad}

  \def\@sect#1#2#3#4#5#6[#7]#8{%
    \ifnum #2>\c@secnumdepth
      \let\@svsec\@empty
    \else
      \refstepcounter{#1}%
      \protected@edef\@svsec{\@seccntformat{#1}\relax}%
    \fi
    \@tempskipa #5\relax
    \ifdim \@tempskipa>\z@
      \begingroup
        #6{%
          \@hangfrom{\hskip #3\relax\@svsec}%
            \interlinepenalty \@M #8\@@par}%
      \endgroup
      \csname #1mark\endcsname{#7}%
      \addcontentsline{toc}{#1}{%
        \ifnum #2>\c@secnumdepth \else
          \protect\numberline{\csname the#1\endcsname.}%
        \fi
        #7}%
    \else
      \def\@svsechd{%
        #6{\hskip #3\relax
        \@svsec #8.}%
        \csname #1mark\endcsname{#7}%
        \addcontentsline{toc}{#1}{%
          \ifnum #2>\c@secnumdepth \else
            \protect\numberline{\csname the#1\endcsname.}%
          \fi
          #7}}%
    \fi
    \@xsect{#5}}

\def\@ssect#1#2#3#4#5{%
    \@tempskipa #3\relax
    \ifdim \@tempskipa>\z@
      \begingroup
        #4{%
          \@hangfrom{\hskip #1}%
            \interlinepenalty \@M #5\@@par}%
      \endgroup
    \else
      \def\@svsechd{#4{\hskip #1\relax #5.}}%
    \fi
    \@xsect{#3}}

	%%
%% FEJLÉC
%%
\renewcommand{\@oddhead}{\vbox{\makebox[\textwidth][l]{\hbox {}{\sl \rightmark}\hfill%
      \rm\thepage\hbox {}}
        \vss\vskip 2pt \makebox[\textwidth][l]{}}}
\renewcommand{\@evenhead}{\vbox{\makebox[\textwidth][l]{\rm\thepage\hfill{\sl \leftmark}%
    \hbox {}}\vss \vskip 2pt \makebox[\textwidth][l]{}}}

%%
%% JOBB OLDALON BEHÚZOTT KÖRNYEZET A CIKLUSINVARIÁNSOK BIZONYÍTÁSÁHOZ
%%	
\newenvironment{behuz}[1]
{
\vspace{-0.1mm}
\setlength{\temp}{\leftmargin}
\begin{list}{}{\setlength{\leftmargin}{2.6em}}
\item[]
\hspace*{-\leftmargin}\textbf{#1:}\hspace*{1mm}}
{
\setlength{\leftmargin}{\temp}
\end{list}
}

