de.learnlib.algorithms.nlstar.Inconsistency Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of learnlib-nlstar Show documentation
Show all versions of learnlib-nlstar Show documentation
This artifact provides the implementation of the NL* learning algorithm as described in the paper "Angluin-Style
Learning of NFA" (http://ijcai.org/Proceedings/09/Papers/170.pdf) by Benedikt Bollig, Peter Habermehl,
Carsten Kern, and Martin Leucker.
/* Copyright (C) 2013-2020 TU Dortmund
* This file is part of LearnLib, http://www.learnlib.de/.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package de.learnlib.algorithms.nlstar;
/**
* An (RFSA) inconsistency in an {@link ObservationTable}.
*
* @param
* input symbol type
*
* @author Malte Isberner
*/
public class Inconsistency {
private final Row row1;
private final Row row2;
private final int symbolIdx;
private final int suffixIdx;
/**
* Constructor.
*
* @param row1
* the first upper prime row
* @param row2
* the second upper prime row (covered by {@code row1})
* @param symbolIdx
* the index of the symbol
* @param suffixIdx
* the index of the suffix
*/
public Inconsistency(Row row1, Row row2, int symbolIdx, int suffixIdx) {
this.row1 = row1;
this.row2 = row2;
this.symbolIdx = symbolIdx;
this.suffixIdx = suffixIdx;
}
public Row getRow1() {
return row1;
}
public Row getRow2() {
return row2;
}
public int getSymbolIdx() {
return symbolIdx;
}
public int getSuffixIdx() {
return suffixIdx;
}
}