/******************************************************************************* * Copyright (c) 2013 Imperial College London. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Raul Castro Fernandez - initial design and implementation ******************************************************************************/ package uk.ac.imperial.lsds.seep.api.largestateimpls; import java.util.ArrayList; public interface MatrixI { // Splits a matrix evenly by rows public Matrix[] splitByRows(Matrix m); // Splits a matrix evely by columns public Matrix[] splitByCol(Matrix m); // Returns an integer vector given the row index public ArrayList<Component> getRowVectorWithTag(int rowTag); // Computes the coOccurrence matrix (AAt) of a given matrix public ArrayList<ArrayList<Integer>> coOccurrence(ArrayList<ArrayList<Integer>> m); // // Multipy a vector by a matrix and returns the result vector // public static ArrayList<Integer> multipyVectorByDiagonalMatrix(ArrayList<Integer> vector, ArrayList<ArrayList<Integer>> m); public ArrayList<ArrayList<Integer>> getExpandedRepr(); }