///////////////////////////////////////////////////////////////////////////////
//                   ALL STUDENTS COMPLETE THESE SECTIONS
// Title:            Satisfiability Test
// Files:            ABMatrix.java, CdbTuple.java, Dialog1.java, Frame1.java,
//                   JTableHeaderToolTips.java, Mytest.java, RowNumberHeader.java
// Semester:         Spring 2007
//
// Author:           Hang Yue, yuehang366@gmail.com
// CS Login:         hyue
// Lecturer's Name:  Dr.Peter Revesz
// Lab Section:      (your lab section number)
//
//                   PAIR PROGRAMMERS COMPLETE THIS SECTION
// Pair Partner:     (name of your pair programming partner)
// CS Login:         (partner's login name)
// Lecturer's Name:  (name of your partner's lecturer)
// Lab Section:      (your partner's lab section number)
//
//                   STUDENTS WHO GET HELP FROM ANYONE OTHER THAN THEIR PARTNER
// Credits:          Scot Anderson
//////////////////////////// 80 columns wide //////////////////////////////////
package satisfiablitytest;

import java.io.Serializable;

public class ABMatrix implements Serializable {
	/**
	 * for Serializable interface
	 */
	private static final long serialVersionUID = 5334532903567570727L;

	/**
	 * M is the number of rows and columns since we always have a square matrix
	 */
	public int M;
	
	/**
	 * This is the actual matrix that you must use
	 */
	public double[][] matrix;
	
	public ABMatrix()
	{
		matrix = null;
		M = 0;
	}
	
	/**
	 * This loads a previously saved matrix
	 * @param filename
	 */
	public ABMatrix(double[][] input, int m, String[] variables) throws Exception
	{
		M = m;
		matrix = input;
		if (m!=variables.length)
		{
			throw new Exception("The number of variables must match the size of the programs.");
		}
	}
}
