import tensorflow as tf

                                         [[0, 1, 2, 3], [1, 0, 2, 3], [2, 3, 1, 0], [2, 1, 0, 3], [0, 1, 2, 3]],
                                         num_partitions=4)  # after permute becomes 5,4,11, return all partitions 5,11
    node_a = tf.div(list_of_parts[0], list_of_parts[1])
    node_b = tf.divide(list_of_parts[2], list_of_parts[3])
    trace_node = tf.trace(node_a) + node_b  # there is a broadcast here
    out_node = tf.cast(tf.count_nonzero(trace_node), dtype=tf.float32) + tf.Variable(tf.random_normal(shape=(2, 3)))

    placeholders = [in_node_a, in_node_b, in_node_c]
    predictions = [out_node]

