Revision: 457
Author: joewhaley
Date: 2006-07-16 22:20:06 -0700 (Sun, 16 Jul 2006)
ViewCVS: http://svn.sourceforge.net/javabdd/?rev=457&view=rev
Log Message:
-----------
Upgraded to latest JavaBDD 2.0 and jwutil libraries.
Added Paths:
-----------
trunk/JavaBDD_tests/bdd/RangeTest.java
Added: trunk/JavaBDD_tests/bdd/RangeTest.java
===================================================================
--- trunk/JavaBDD_tests/bdd/RangeTest.java (rev 0)
+++ trunk/JavaBDD_tests/bdd/RangeTest.java 2006-07-17 05:20:06 UTC (rev 457)
@@ -0,0 +1,74 @@
+// RangeTest.java, created Jul 13, 2003 9:28:32 PM by John Whaley
+// Copyright (C) 2003 John Whaley
+// Licensed under the terms of the GNU LGPL; see COPYING for details.
+package bdd;
+
+import java.util.Arrays;
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import net.sf.javabdd.BDD;
+import net.sf.javabdd.BDDDomain;
+import net.sf.javabdd.BDDFactory;
+
+/**
+ * RangeTest
+ *
+ * @author John Whaley
+ * @version $Id: RangeTest.java 2001 2004-10-16 03:03:56Z joewhaley $
+ */
+public class RangeTest {
+
+ public static void main(String[] args) throws IOException {
+ BDDFactory bdd = BDDFactory.init(1000000, 10000);
+
+ BDDDomain[] domains = bdd.extDomain(new int[] { 10, 8 });
+ int[] order = new int[bdd.varNum()];
+
+ BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
+ for (;;) {
+ buildRandomPermutation(order);
+ printPermutation(order);
+ bdd.setVarOrder(order);
+ System.out.print("Enter low: ");
+ int lo = Integer.parseInt(in.readLine());
+ System.out.print("Enter high: ");
+ int hi = Integer.parseInt(in.readLine());
+ for (int i=0; i<domains.length; ++i) {
+ BDD b = domains[i].varRange(lo, hi);
+ System.out.println(b.toStringWithDomains()+" = "+b.nodeCount()+" nodes");
+ buildRandomPermutation(order);
+ printPermutation(order);
+ bdd.setVarOrder(order);
+ System.out.println(b.toStringWithDomains()+" = "+b.nodeCount()+" nodes");
+ buildRandomPermutation(order);
+ printPermutation(order);
+ bdd.setVarOrder(order);
+ System.out.println(b.toStringWithDomains()+" = "+b.nodeCount()+" nodes");
+ buildRandomPermutation(order);
+ printPermutation(order);
+ bdd.setVarOrder(order);
+ System.out.println(b.toStringWithDomains()+" = "+b.nodeCount()+" nodes");
+ }
+ }
+ }
+
+ static void printPermutation(int[] a) {
+ for (int i=0; i<a.length; ++i) {
+ System.out.print(a[i]+" ");
+ }
+ System.out.println();
+ }
+
+ static void buildRandomPermutation(int[] a) {
+ Arrays.fill(a, -1);
+ int n = 0;
+ java.util.Random r = new java.util.Random();
+ while (n < a.length) {
+ int k = r.nextInt(a.length);
+ if (a[k] == -1) {
+ a[k] = n++;
+ }
+ }
+ }
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|