Решение уравнений в регулярных выражениях — различия между версиями
(→Решение уравнений в регулярных выражениях) |
(→Решение системы уравнений в регулярных выражениях) |
||
Строка 20: | Строка 20: | ||
− | < | + | <tex> |
\begin{cases} | \begin{cases} | ||
− | \alpha_{11} | + | \alpha_{11} X_1 + \alpha_{12} X_2 + \dots + \alpha_{1n} X_n + \beta_1 = X_1 \\ |
− | \alpha_{21} | + | \alpha_{21} X_1 + \alpha_{22} X_2 + \dots + \alpha_{2n} X_n + \beta_2 = X_2\\ |
\dots\\ | \dots\\ | ||
− | \alpha_{n1} | + | \alpha_{n1} X_1 + \alpha_{n2} X_2 + \dots + \alpha_{nn} X_n + \beta_n = X_n \\ |
\end{cases} | \end{cases} | ||
− | </ | + | </tex> |
'''метод решения''' | '''метод решения''' | ||
выразим <tex>x_1</tex> из первого уравнения и подставим во второе уравнение: <tex> x_2 = ( \alpha_{21} \alpha_{11}^{*} \alpha_{12} +\alpha_{22} ) x_2 + \alpha_{21} \alpha_{11}^{*} \alpha_{13} x_3 + \dots + \alpha_{21} \alpha_{11}^{*} \alpha_{1n} x_n + \beta_2</tex>. Пусть <tex> a =( \alpha_{21} \alpha_{11}^{*} \alpha_{12} +\alpha_{22} ) </tex>, <tex> b =\alpha_{21} \alpha_{11}^{*} \alpha_{13} x_3 + \dots + \alpha_{21} \alpha_{11}^{*} \alpha_{1n} x_n + \beta_2 </tex>, тогда уравнение примет вид <tex>x_2=a x_2 + b</tex>. его решением будет <tex>a^{*} b</tex>. подставим в следующее уравнение выраженный <tex>x_2</tex>, далее выполняя схожие итерации получим уравнение <tex>x_n = a' x_n + b'</tex>, где <tex> a'=f( \alpha_{11} \dots \alpha_{1n} \alpha_{2n} \dots \alpha_{nn} ),\, b'=g( \alpha_{11} \dots \alpha_{1n} \alpha_{2n} \dots \alpha_{nn} )</tex> <tex> \Rightarrow x_n= f^{*}( \alpha_{11} \dots \alpha_{1n} \alpha_{2n} \dots \alpha_{nn} )g( \alpha_{11} \dots \alpha_{1n} \alpha_{2n} \dots \alpha_{nn} )</tex>. далее подставляя в полученные в ходе итераций уравнения найденный <tex> x_i </tex>, обратной прогонкой найдем <tex>x_1 \dots x_{n-1} </tex>. | выразим <tex>x_1</tex> из первого уравнения и подставим во второе уравнение: <tex> x_2 = ( \alpha_{21} \alpha_{11}^{*} \alpha_{12} +\alpha_{22} ) x_2 + \alpha_{21} \alpha_{11}^{*} \alpha_{13} x_3 + \dots + \alpha_{21} \alpha_{11}^{*} \alpha_{1n} x_n + \beta_2</tex>. Пусть <tex> a =( \alpha_{21} \alpha_{11}^{*} \alpha_{12} +\alpha_{22} ) </tex>, <tex> b =\alpha_{21} \alpha_{11}^{*} \alpha_{13} x_3 + \dots + \alpha_{21} \alpha_{11}^{*} \alpha_{1n} x_n + \beta_2 </tex>, тогда уравнение примет вид <tex>x_2=a x_2 + b</tex>. его решением будет <tex>a^{*} b</tex>. подставим в следующее уравнение выраженный <tex>x_2</tex>, далее выполняя схожие итерации получим уравнение <tex>x_n = a' x_n + b'</tex>, где <tex> a'=f( \alpha_{11} \dots \alpha_{1n} \alpha_{2n} \dots \alpha_{nn} ),\, b'=g( \alpha_{11} \dots \alpha_{1n} \alpha_{2n} \dots \alpha_{nn} )</tex> <tex> \Rightarrow x_n= f^{*}( \alpha_{11} \dots \alpha_{1n} \alpha_{2n} \dots \alpha_{nn} )g( \alpha_{11} \dots \alpha_{1n} \alpha_{2n} \dots \alpha_{nn} )</tex>. далее подставляя в полученные в ходе итераций уравнения найденный <tex> x_i </tex>, обратной прогонкой найдем <tex>x_1 \dots x_{n-1} </tex>. |
Версия 16:20, 9 октября 2010
Решение уравнений в регулярных выражениях
Утверждение: |
Пусть уравнение имеет вид , тогда:
если — единственное решение. если — решение для |
. тогда для . Пусть — самое короткое. где — короче
. предположим, что — решение, тогда подходит в . Выберем в качестве любой язык.
|
Решение системы уравнений в регулярных выражениях
Пусть система уравнений имеет вид
метод решения
выразим из первого уравнения и подставим во второе уравнение: . Пусть , , тогда уравнение примет вид . его решением будет . подставим в следующее уравнение выраженный , далее выполняя схожие итерации получим уравнение , где . далее подставляя в полученные в ходе итераций уравнения найденный , обратной прогонкой найдем .